3 namespace Doctrine\Tests\Models\DDC964;
5 use Doctrine\Common\Collections\ArrayCollection;
16 * @Column(type="integer", name="user_id", length=150)
21 * @Column(name="user_name", nullable=true, unique=false, length=250)
26 * @var ArrayCollection
28 * @ManyToMany(targetEntity="DDC964Group", inversedBy="users", cascade={"persist", "merge", "detach"})
29 * @JoinTable(name="ddc964_users_groups",
30 * joinColumns={@JoinColumn(name="user_id", referencedColumnName="id")},
31 * inverseJoinColumns={@JoinColumn(name="group_id", referencedColumnName="id")}
39 * @ManyToOne(targetEntity="DDC964Address", cascade={"persist", "merge"})
40 * @JoinColumn(name="address_id", referencedColumnName="id")
47 public function __construct($name = null)
50 $this->groups = new ArrayCollection;
56 public function getId()
64 public function getName()
72 public function setName($name)
78 * @param DDC964Group $group
80 public function addGroup(DDC964Group $group)
82 $this->groups->add($group);
83 $group->addUser($this);
87 * @return ArrayCollection
89 public function getGroups()
95 * @return DDC964Address
97 public function getAddress()
99 return $this->address;
103 * @param DDC964Address $address
105 public function setAddress(DDC964Address $address)
107 $this->address = $address;
110 public static function loadMetadata($metadata)
112 $metadata->mapField(array(
116 'columnName' => 'user_id',
119 $metadata->mapField(array(
120 'fieldName' => 'name',
122 'columnName'=> 'user_name',
128 $metadata->mapManyToOne(array(
129 'fieldName' => 'address',
130 'targetEntity' => 'DDC964Address',
131 'cascade' => array('persist','merge'),
132 'joinColumn' => array('name'=>'address_id', 'referencedColumnMame'=>'id'),
135 $metadata->mapManyToMany(array(
136 'fieldName' => 'groups',
137 'targetEntity' => 'DDC964Group',
138 'inversedBy' => 'users',
139 'cascade' => array('persist','merge','detach'),
140 'joinTable' => array(
141 'name' => 'ddc964_users_groups',
142 'joinColumns' => array(array(
144 'referencedColumnName'=>'id',
146 'inverseJoinColumns'=>array(array(
148 'referencedColumnName'=>'id',
153 $metadata->setIdGeneratorType(\Doctrine\ORM\Mapping\ClassMetadataInfo::GENERATOR_TYPE_AUTO);