/** * @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->getSkills()->contains($this)) { $userSkill = new UserSkill(); $userSkill->setUser($user); $this->addUserSkill($userSkill); $foreignCollection = $user->getSkills(); $foreignCollection[] = $this; } }