Metabor\Statemachine\Observer\TransitionLogger::createLoggerMessage PHP Method

createLoggerMessage() protected method

protected createLoggerMessage ( array $context ) : string
$context array
return string
    protected function createLoggerMessage(array $context)
    {
        $message = 'Transition';
        if (isset($context[self::CONTEXT_SUBJECT])) {
            $message .= ' for "' . $this->stringConverter->convertToString($context[self::CONTEXT_SUBJECT]) . '"';
        }
        if (isset($context[self::CONTEXT_LAST_STATE])) {
            $message .= ' from "' . $this->stringConverter->convertToString($context[self::CONTEXT_LAST_STATE]) . '"';
        }
        if (isset($context[self::CONTEXT_CURRENT_STATE])) {
            $message .= ' to "' . $this->stringConverter->convertToString($context[self::CONTEXT_CURRENT_STATE]) . '"';
        }
        if (isset($context[self::CONTEXT_TRANSITION])) {
            /* @var $transition TransitionInterface */
            $transition = $context[self::CONTEXT_TRANSITION];
            $eventName = $transition->getEventName();
            $condition = $transition->getConditionName();
            if ($eventName || $condition) {
                $message .= ' with';
                if ($eventName) {
                    $message .= ' event "' . $eventName . '"';
                }
                if ($eventName) {
                    $message .= ' condition "' . $condition . '"';
                }
            }
        }
        return $message;
    }