friends = new \Doctrine\Common\Collections\ArrayCollection; } public function getId() { return $this->id; } public function getName() { return $this->name; } public function setName($name) { $this->name = $name; } public function getSpouse() { return $this->spouse; } public function getFriends() { return $this->friends; } public function addFriend(CompanyPerson $friend) { if ( ! $this->friends->contains($friend)) { $this->friends->add($friend); $friend->addFriend($this); } } public function setSpouse(CompanyPerson $spouse) { if ($spouse !== $this->spouse) { $this->spouse = $spouse; $this->spouse->setSpouse($this); } } public static function loadMetadata(\Doctrine\ORM\Mapping\ClassMetadataInfo $metadata) { $metadata->setPrimaryTable(array( 'name' => 'company_person', )); $metadata->addNamedNativeQuery(array ( 'name' => 'fetchAllWithResultClass', 'query' => 'SELECT id, name, discr FROM company_persons ORDER BY name', 'resultClass' => 'Doctrine\\Tests\\Models\\Company\\CompanyPerson', )); $metadata->addNamedNativeQuery(array ( 'name' => 'fetchAllWithSqlResultSetMapping', 'query' => 'SELECT id, name, discr AS discriminator FROM company_persons ORDER BY name', 'resultSetMapping' => 'mappingFetchAll', )); $metadata->addSqlResultSetMapping(array ( 'name' => 'mappingFetchAll', 'columns' => array(), 'entities' => array ( array ( 'fields' => array ( array ( 'name' => 'id', 'column' => 'id', ), array ( 'name' => 'name', 'column' => 'name', ), ), 'entityClass' => 'Doctrine\Tests\Models\Company\CompanyPerson', 'discriminatorColumn' => 'discriminator', ), ), )); } }