private function handleIncident(Event &$event, Event $lastEvent = null)
 {
     if ($event->getStatus() == Event::STATUS_FAILURE) {
         if (!$event->getIsStatusChange() && $event->getEventIdentifier()->getLastIncident()) {
             $incident = $event->getEventIdentifier()->getLastIncident();
             $event->setIncident($incident);
         } else {
             $incident = new Incident($event);
             $incident->setEventIdentifier($event->getEventIdentifier());
             $event->setIncident($incident);
             $event->getEventIdentifier()->setLastIncident($incident);
         }
         $incident->increaseEventCount();
         $this->entityManager->persist($incident);
         $this->entityManager->persist($event);
         $this->entityManager->flush();
     } else {
         if ($event->getIsStatusChange()) {
             if ($event->getEventIdentifier()->getLastIncident()) {
                 $incident = $event->getEventIdentifier()->getLastIncident();
                 if ($lastEvent) {
                     $incident->close();
                 }
                 $this->entityManager->persist($incident);
                 $this->entityManager->flush();
             }
         }
     }
 }