ezcPersistentObjectProperty) */ public $properties = array(); /** * The fields of the Persistent Object as an array of ezcPersistentObjectProperty. * The key is the name of the original database column. * * @var array(string=>ezcPersistentObjectProperty) */ public $columns = array(); /** * Contains the relations of this object. An array indexed by class names * of the related object, assigned to a instance of a class derived from * ezcPersistentRelation. * * @var array(string=>ezcPersistentRelation) */ public $relations = array(); /** * Constructs a new PersistentObjectDefinition. * * The parameters $key and $incrementKey are not used any more and will be removed * next time we can break backwards compatibility. */ public function __construct( $table = '', $class = '', array $properties = array(), array $relations = array(), ezcPersistentObjectIdProperty $idProperty = null ) { $this->table = $table; $this->class = $class; $this->properties = $properties; $this->relations = $relations; $this->idProperty = $idProperty; } /** * Returns a new instance of this class with the data specified by $array. * * $array contains all the data members of this class in the form: * array('member_name'=>value). * * __set_state makes this class exportable with var_export. * var_export() generates code, that calls this method when it * is parsed with PHP. * * @param array(string=>mixed) * @return ezcPersistentObjectDefinition */ public static function __set_state( array $array ) { return new ezcPersistentObjectDefinition( $array['table'], $array['class'], $array['properties'], $array['relations'], $array['idProperty'] ); } } ?>