public function onStepExecuted(StepExecutedEvent $event) { $result = $event->getResult(); if ($event->getResult() === null) { throw new \Exception('Received null as step execution event result'); } if (is_object($result) && $result instanceof AbstractCollection) { if (count($result) == 0) { throw new \Exception('Step execution resulted in an empty collection. Step not applied?'); } } self::$executions++; }
public function onStepExecuted(StepExecutedEvent $event) { $obj = $event->getResult(); $type = $event->getStep()->type; $dsl = $event->getStep()->dsl; $action = isset($dsl['mode']) ? $dsl['mode'] . 'd' : 'acted upon'; switch ($type) { case 'content': case 'content_type': case 'language': case 'location': case 'object_state': case 'object_state_group': case 'role': case 'tag': case 'user': case 'user_group': $out = $type . ' ' . $this->getObjectIdentifierAsString($obj) . ' has been ' . $action; break; case 'sql': $out = 'sql has been executed'; break; case 'php': $out = "class '{$dsl['class']}' has been executed"; break; default: // custom migration step types... $out = "migration step '{$type}' has been executed"; } if ($this->output) { if ($this->output->getVerbosity() >= $this->minVerbosityLevel) { $this->output->writeln($out); } } else { echo $out . "\n"; } }