types = new \Doctrine\Common\Collections\ArrayCollection(); } /** * Add a new Region to this Country. * @param Type $type * @return \Stock\Entity\Region */ public function addType(Type $type) { $this->types[] = $type; return $this; } /** * Magic getter to expose protected properties. * @param string $property * @return mixed */ public function __get($property) { return $this->$property; } /** * Magic setter to save protected properties. * @param string $property * @param mixed $value */ public function __set($property, $value) { $this->$property = $value; } /** * @ORM\PrePersist */ public function setCreateTime() { $this->created = new \DateTime("now"); } /** * @ORM\PreUpdate */ public function setUpdateTime() { $this->updated = new \DateTime("now"); } /** * Convert the object to an array. * @param array $expand * @param array $intersect * @return array */ public function toArray(array $expand = array(), array $intersect = array()) { $includeAll = empty($intersect); $data = array(); ($includeAll || isset($intersect['id'])) && $data['id'] = $this->id; ($includeAll || isset($intersect['make'])) && in_array('make', $expand) && $data['make'] = $this->make->toArray($expand, $intersect); ($includeAll || isset($intersect['name'])) && $data['name'] = $this->name; return $data; } /** * Convert the object to an array for synchronization. * @return array */ public function toSynchArray() { return array( 'id' => $this->id, 'make' => $this->make->id, 'name' => $this->name ); } /** * Populate from an array. * @param array $data */ public function fromArray($data = array()) { isset($data['id']) && $this->id = $data['id']; isset($data['make']) && $this->make = $data['make']; isset($data['name']) && $this->name = $data['name']; isset($data['createVersion']) && $this->createVersion = $data['createVersion']; isset($data['updateVersion']) && $this->updateVersion = $data['updateVersion']; } }