Ejemplo n.º 1
0
 /**
  * Remove singlePlugin of this object
  * through the R_issues_singleplugin cross reference table.
  *
  * @param ChildPlugins $singlePlugin
  * @return ChildIssues The current object (for fluent API support)
  */
 public function removeSinglePlugin(ChildPlugins $singlePlugin)
 {
     if ($this->getSinglePlugins()->contains($singlePlugin)) {
         $rIssuesSingleplugin = new ChildRIssuesSingleplugin();
         $rIssuesSingleplugin->setSinglePlugin($singlePlugin);
         if ($singlePlugin->isSingleIssuesLoaded()) {
             //remove the back reference if available
             $singlePlugin->getSingleIssues()->removeObject($this);
         }
         $rIssuesSingleplugin->setSingleIssue($this);
         $this->removeRIssuesSingleplugin(clone $rIssuesSingleplugin);
         $rIssuesSingleplugin->clear();
         $this->collSinglePlugins->remove($this->collSinglePlugins->search($singlePlugin));
         if (null === $this->singlePluginsScheduledForDeletion) {
             $this->singlePluginsScheduledForDeletion = clone $this->collSinglePlugins;
             $this->singlePluginsScheduledForDeletion->clear();
         }
         $this->singlePluginsScheduledForDeletion->push($singlePlugin);
     }
     return $this;
 }