/** * {@inheritdoc} */ public function delete(DeletableCriteriaInterface $criteria) { $event = $this->getEvent(); $event->setCriteria($criteria); $results = $this->getEventManager()->trigger(ModelEvent::EVENT_DELETE_PRE, $event, function ($r) { return is_int($r); }); if ($results->stopped()) { $last = $results->last(); if (null === $last || is_int($last)) { $event->setResult($last); return $last; } } $event->setResult(parent::delete($event->getCriteria())); $results = $this->getEventManager()->trigger(ModelEvent::EVENT_DELETE_POST, $event, function ($r) { return is_int($r); }); if ($results->stopped()) { $last = $results->last(); if (null === $last || is_int($last)) { $event->setResult($last); } } return $event->getResult(); }