iValueObject.php 930 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. <?php
  2. namespace Luracast\Restler\Data;
  3. /**
  4. * Restler is using many ValueObjects across to make it easy for the developers
  5. * to use them with the help of code hinting etc.,
  6. *
  7. * @category Framework
  8. * @package Restler
  9. * @author R.Arul Kumaran <arul@luracast.com>
  10. * @copyright 2010 Luracast
  11. * @license http://www.opensource.org/licenses/lgpl-license.php LGPL
  12. * @link http://luracast.com/products/restler/
  13. *
  14. */
  15. interface iValueObject
  16. {
  17. /**
  18. * This static method is called for creating an instance of the class by
  19. * passing the initiation values as an array.
  20. *
  21. * @static
  22. * @abstract
  23. *
  24. * @param array $properties
  25. *
  26. * @return iValueObject
  27. */
  28. public static function __set_state(array $properties);
  29. /**
  30. * This method provides a string representation for the instance
  31. *
  32. * @return string
  33. */
  34. public function __toString();
  35. }