/** * Remove dgmEffects of this object * through the dgmtypeeffects cross reference table. * * @param ChildDgmEffects $dgmEffects * @return ChildInvTypes The current object (for fluent API support) */ public function removeDgmEffects(ChildDgmEffects $dgmEffects) { if ($this->getDgmEffectss()->contains($dgmEffects)) { $dgmTypeEffects = new ChildDgmTypeEffects(); $dgmTypeEffects->setDgmEffects($dgmEffects); if ($dgmEffects->isInvTypessLoaded()) { //remove the back reference if available $dgmEffects->getInvTypess()->removeObject($this); } $dgmTypeEffects->setInvTypes($this); $this->removeDgmTypeEffects(clone $dgmTypeEffects); $dgmTypeEffects->clear(); $this->collDgmEffectss->remove($this->collDgmEffectss->search($dgmEffects)); if (null === $this->dgmEffectssScheduledForDeletion) { $this->dgmEffectssScheduledForDeletion = clone $this->collDgmEffectss; $this->dgmEffectssScheduledForDeletion->clear(); } $this->dgmEffectssScheduledForDeletion->push($dgmEffects); } return $this; }