/**
  * @param	User $user The user object to add.
  */
 protected function doAddUser(User $user)
 {
     // set the back reference to this object directly as using provided method either results
     // in endless loop or in multiple relations
     if (!$user->getGroups()->contains($this)) {
         $userGroup = new UserGroup();
         $userGroup->setUser($user);
         $this->addUserGroup($userGroup);
         $foreignCollection = $user->getGroups();
         $foreignCollection[] = $this;
     }
 }
 /**
  * @param	UserGroup $userGroup The userGroup object to add.
  */
 protected function doAddUserGroup($userGroup)
 {
     $this->collUserGroups[] = $userGroup;
     $userGroup->setUser($this);
 }