/**
* @param AbstractEvent $event
* @param bool $progress
*/
private function handleEvent(AbstractEvent $event, $progress = TRUE)
{
$eventType = $event->getType();
if (isset($this->enrichers[$eventType])) {
foreach ($this->enrichers[$eventType] as $enricher) {
switch ($eventType) {
case 'phpdox.start':
$enricher->enrichStart($event);
break;
case 'class.start':
$enricher->enrichClass($event);
break;
case 'interface.start':
$enricher->enrichInterface($event);
break;
case 'trait.start':
$enricher->enrichTrait($event);
break;
case 'token.file.start':
$enricher->enrichTokenFile($event);
break;
case 'phpdox.end':
$enricher->enrichEnd($event);
break;
}
}
}
foreach ($this->handlerRegistry->getHandlersForEvent($event->getType()) as $callback) {
call_user_func($callback, $event);
}
if ($progress) {
$this->logger->progress('processed');
}
}