web/lib/Zend/Amf/Response.php
changeset 807 877f952ae2bd
parent 207 621fa6caec0c
child 1230 68c69c656a2c
equal deleted inserted replaced
805:5e7a0fedabdf 807:877f952ae2bd
    12  * obtain it through the world-wide-web, please send an email
    12  * obtain it through the world-wide-web, please send an email
    13  * to license@zend.com so we can send you a copy immediately.
    13  * to license@zend.com so we can send you a copy immediately.
    14  *
    14  *
    15  * @category   Zend
    15  * @category   Zend
    16  * @package    Zend_Amf
    16  * @package    Zend_Amf
    17  * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
    17  * @copyright  Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
    18  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    18  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    19  * @version    $Id: Response.php 21968 2010-04-22 03:53:34Z matthew $
    19  * @version    $Id: Response.php 24593 2012-01-05 20:35:02Z matthew $
    20  */
    20  */
    21 
    21 
    22 /** @see Zend_Amf_Constants */
    22 /** @see Zend_Amf_Constants */
    23 require_once 'Zend/Amf/Constants.php';
    23 require_once 'Zend/Amf/Constants.php';
    24 
    24 
    30 
    30 
    31 /**
    31 /**
    32  * Handles converting the PHP object ready for response back into AMF
    32  * Handles converting the PHP object ready for response back into AMF
    33  *
    33  *
    34  * @package    Zend_Amf
    34  * @package    Zend_Amf
    35  * @copyright  Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
    35  * @copyright  Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
    36  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    36  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    37  */
    37  */
    38 class Zend_Amf_Response
    38 class Zend_Amf_Response
    39 {
    39 {
    40     /**
    40     /**
    93             $serializer = new Zend_Amf_Parse_Amf0_Serializer($stream);
    93             $serializer = new Zend_Amf_Parse_Amf0_Serializer($stream);
    94             $stream->writeUTF($header->name);
    94             $stream->writeUTF($header->name);
    95             $stream->writeByte($header->mustRead);
    95             $stream->writeByte($header->mustRead);
    96             $stream->writeLong(Zend_Amf_Constants::UNKNOWN_CONTENT_LENGTH);
    96             $stream->writeLong(Zend_Amf_Constants::UNKNOWN_CONTENT_LENGTH);
    97             if (is_object($header->data)) {
    97             if (is_object($header->data)) {
    98                 // Workaround for PHP5 with E_STRICT enabled complaining about 
    98                 // Workaround for PHP5 with E_STRICT enabled complaining about
    99                 // "Only variables should be passed by reference"
    99                 // "Only variables should be passed by reference"
   100                 $placeholder = null;
   100                 $placeholder = null;
   101                 $serializer->writeTypeMarker($placeholder, null, $header->data);
   101                 $serializer->writeTypeMarker($placeholder, null, $header->data);
   102             } else {
   102             } else {
   103                 $serializer->writeTypeMarker($header->data);
   103                 $serializer->writeTypeMarker($header->data);
   113             $stream->writeUTF($body->getResponseURI());
   113             $stream->writeUTF($body->getResponseURI());
   114             $stream->writeLong(Zend_Amf_Constants::UNKNOWN_CONTENT_LENGTH);
   114             $stream->writeLong(Zend_Amf_Constants::UNKNOWN_CONTENT_LENGTH);
   115             $bodyData = $body->getData();
   115             $bodyData = $body->getData();
   116             $markerType = ($this->_objectEncoding == Zend_Amf_Constants::AMF0_OBJECT_ENCODING) ? null : Zend_Amf_Constants::AMF0_AMF3;
   116             $markerType = ($this->_objectEncoding == Zend_Amf_Constants::AMF0_OBJECT_ENCODING) ? null : Zend_Amf_Constants::AMF0_AMF3;
   117             if (is_object($bodyData)) {
   117             if (is_object($bodyData)) {
   118                 // Workaround for PHP5 with E_STRICT enabled complaining about 
   118                 // Workaround for PHP5 with E_STRICT enabled complaining about
   119                 // "Only variables should be passed by reference"
   119                 // "Only variables should be passed by reference"
   120                 $placeholder = null;
   120                 $placeholder = null;
   121                 $serializer->writeTypeMarker($placeholder, $markerType, $bodyData);
   121                 $serializer->writeTypeMarker($placeholder, $markerType, $bodyData);
   122             } else {
   122             } else {
   123                 $serializer->writeTypeMarker($bodyData, $markerType);
   123                 $serializer->writeTypeMarker($bodyData, $markerType);