protected function extractAssociationValues($sagaType, EventMessageInterface $event) { $inspector = new SagaMethodMessageHandlerInspector($sagaType); $handlers = $inspector->getMessageHandlers($event); $values = array(); foreach ($handlers as $handler) { $values[] = $handler->getAssociationValue($event); } return $values; }
public final function handle(EventMessageInterface $event) { if ($this->isActive()) { // find and invoke handler $handler = $this->inspector->findHandlerMethod($this, $event); $handler->invoke($this, $event); if ($handler->isEndingHandler()) { $this->end(); } } }