/**
  * creates an Return instance (Cancel, Failure, Success...)
  * @param array $return - returned post data
  * @param type $secret - QPAY secret
  * @return WirecardCEE_Client_QPay_Return_Abstract
  */
 public static function createReturnInstance($return, $secret)
 {
     if (!is_array($return)) {
         $return = WirecardCEE_SerialApi::decode($return);
     }
     if (array_key_exists('paymentState', $return)) {
         return self::_getInstance($return, $secret);
     } else {
         throw new WirecardCEE_Client_QPay_Exception('Invalid response from QPAY. Paymentstate is missing.');
     }
 }
 /**
  * base ctor for Response objects
  * @param Zend_Http_Response $response
  */
 public function __construct($response)
 {
     if ($response instanceof Zend_Http_Response) {
         $this->_response = WirecardCEE_SerialApi::decode($response->getBody());
     } else {
         if (is_array($response)) {
             $this->_response = $response;
         } else {
             throw new WirecardCEE_Exception('Invalid response from WirecardCEE');
         }
     }
 }