Deserializer.php 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <?php
  2. /**
  3. * Zend Framework
  4. *
  5. * LICENSE
  6. *
  7. * This source file is subject to the new BSD license that is bundled
  8. * with this package in the file LICENSE.txt.
  9. * It is also available through the world-wide-web at this URL:
  10. * http://framework.zend.com/license/new-bsd
  11. * If you did not receive a copy of the license and are unable to
  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.
  14. *
  15. * @category Zend
  16. * @package Zend_Amf
  17. * @subpackage Parse
  18. * @copyright Copyright (c) 2005-2009 Zend Technologies USA Inc. (http://www.zend.com)
  19. * @license http://framework.zend.com/license/new-bsd New BSD License
  20. * @version $Id: Deserializer.php 2504 2011-12-28 07:35:29Z liu21st $
  21. */
  22. /**
  23. * Abstract cass that all deserializer must implement.
  24. *
  25. * Logic for deserialization of the AMF envelop is based on resources supplied
  26. * by Adobe Blaze DS. For and example of deserialization please review the BlazeDS
  27. * source tree.
  28. *
  29. * @see http://opensource.adobe.com/svn/opensource/blazeds/trunk/modules/core/src/java/flex/messaging/io/amf/
  30. * @package Zend_Amf
  31. * @subpackage Parse
  32. * @copyright Copyright (c) 2005-2009 Zend Technologies USA Inc. (http://www.zend.com)
  33. * @license http://framework.zend.com/license/new-bsd New BSD License
  34. */
  35. abstract class Zend_Amf_Parse_Deserializer
  36. {
  37. /**
  38. * The raw string that represents the AMF request.
  39. *
  40. * @var Zend_Amf_Parse_InputStream
  41. */
  42. protected $_stream;
  43. /**
  44. * Constructor
  45. *
  46. * @param Zend_Amf_Parse_InputStream $stream
  47. * @return void
  48. */
  49. public function __construct(Zend_Amf_Parse_InputStream $stream)
  50. {
  51. $this->_stream = $stream;
  52. }
  53. /**
  54. * Checks for AMF marker types and calls the appropriate methods
  55. * for deserializing those marker types. Markers are the data type of
  56. * the following value.
  57. *
  58. * @param int $typeMarker
  59. * @return mixed Whatever the data type is of the marker in php
  60. */
  61. public abstract function readTypeMarker($markerType = null);
  62. }