/** * @param ReportInterface $report */ public function addReport(ReportInterface $report) { $this->reports->add($report); }
/** * @return ArrayCollection|ReportInterface[] */ public function getReports() { //criteria not 100% reliable on many to many relationships //fix in https://github.com/doctrine/doctrine2/pull/1399 // $criteria = Criteria::create()->where(Criteria::expr()->eq("deleted", false)); // return new ArrayCollection($this->reports->matching($criteria)->getValues()); $arr = $this->reports->filter(function (ReportInterface $entity) { return !$entity->isDeleted(); })->toArray(); $reIndexed = array_values($arr); return new ArrayCollection($reIndexed); }
/** * @param ReportInterface $report */ public function removeReport(ReportInterface $report) { $this->reports->removeElement($report); }