File indexing completed on 2024-06-16 05:29:51

0001 <?php
0002 /**
0003  * Zend Framework
0004  *
0005  * LICENSE
0006  *
0007  * This source file is subject to the new BSD license that is bundled
0008  * with this package in the file LICENSE.txt.
0009  * It is also available through the world-wide-web at this URL:
0010  * http://framework.zend.com/license/new-bsd
0011  * If you did not receive a copy of the license and are unable to
0012  * obtain it through the world-wide-web, please send an email
0013  * to license@zend.com so we can send you a copy immediately.
0014  *
0015  * @category   Zend
0016  * @package    Zend_Amf
0017  * @subpackage Parse
0018  * @copyright  Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
0019  * @license    http://framework.zend.com/license/new-bsd     New BSD License
0020  * @version    $Id$
0021  */
0022 
0023 /**
0024  * Abstract cass that all deserializer must implement.
0025  *
0026  * Logic for deserialization of the AMF envelop is based on resources supplied
0027  * by Adobe Blaze DS. For and example of deserialization please review the BlazeDS
0028  * source tree.
0029  *
0030  * @see        http://opensource.adobe.com/svn/opensource/blazeds/trunk/modules/core/src/java/flex/messaging/io/amf/
0031  * @package    Zend_Amf
0032  * @subpackage Parse
0033  * @copyright  Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
0034  * @license    http://framework.zend.com/license/new-bsd     New BSD License
0035  */
0036 abstract class Zend_Amf_Parse_Deserializer
0037 {
0038     /**
0039      * The raw string that represents the AMF request.
0040      *
0041      * @var Zend_Amf_Parse_InputStream
0042      */
0043     protected $_stream;
0044 
0045     /**
0046      * Constructor
0047      *
0048      * @param  Zend_Amf_Parse_InputStream $stream
0049      * @return void
0050      */
0051     public function __construct(Zend_Amf_Parse_InputStream $stream)
0052     {
0053         $this->_stream = $stream;
0054     }
0055 
0056     /**
0057      * Checks for AMF marker types and calls the appropriate methods
0058      * for deserializing those marker types. Markers are the data type of
0059      * the following value.
0060      *
0061      * @param  int $typeMarker
0062      * @return mixed Whatever the data type is of the marker in php
0063      */
0064     public abstract function readTypeMarker($markerType = null);
0065 }