name: HandleMessageMiddleware class_comment: '# * @author Samuel Roze ' dependencies: - name: LoggerAwareTrait type: class source: Psr\Log\LoggerAwareTrait - name: Envelope type: class source: Symfony\Component\Messenger\Envelope - name: HandlerFailedException type: class source: Symfony\Component\Messenger\Exception\HandlerFailedException - name: LogicException type: class source: Symfony\Component\Messenger\Exception\LogicException - name: NoHandlerForMessageException type: class source: Symfony\Component\Messenger\Exception\NoHandlerForMessageException - name: Acknowledger type: class source: Symfony\Component\Messenger\Handler\Acknowledger - name: HandlerDescriptor type: class source: Symfony\Component\Messenger\Handler\HandlerDescriptor - name: HandlersLocatorInterface type: class source: Symfony\Component\Messenger\Handler\HandlersLocatorInterface - name: AckStamp type: class source: Symfony\Component\Messenger\Stamp\AckStamp - name: FlushBatchHandlersStamp type: class source: Symfony\Component\Messenger\Stamp\FlushBatchHandlersStamp - name: HandledStamp type: class source: Symfony\Component\Messenger\Stamp\HandledStamp - name: HandlerArgumentsStamp type: class source: Symfony\Component\Messenger\Stamp\HandlerArgumentsStamp - name: NoAutoAckStamp type: class source: Symfony\Component\Messenger\Stamp\NoAutoAckStamp - name: LoggerAwareTrait type: class source: LoggerAwareTrait properties: [] methods: - name: handle visibility: public parameters: - name: envelope - name: stack comment: "# * @author Samuel Roze \n# */\n# class HandleMessageMiddleware\ \ implements MiddlewareInterface\n# {\n# use LoggerAwareTrait;\n# \n# public function\ \ __construct(\n# private HandlersLocatorInterface $handlersLocator,\n# private\ \ bool $allowNoHandlers = false,\n# ) {\n# }\n# \n# /**\n# * @throws NoHandlerForMessageException\ \ When no handler is found and $allowNoHandlers is false" - name: messageHasAlreadyBeenHandled visibility: private parameters: - name: envelope - name: handlerDescriptor comment: null - name: callHandler visibility: private parameters: - name: handler - name: message - name: ack - name: handlerArgumentsStamp comment: null traits: - Psr\Log\LoggerAwareTrait - Symfony\Component\Messenger\Envelope - Symfony\Component\Messenger\Exception\HandlerFailedException - Symfony\Component\Messenger\Exception\LogicException - Symfony\Component\Messenger\Exception\NoHandlerForMessageException - Symfony\Component\Messenger\Handler\Acknowledger - Symfony\Component\Messenger\Handler\HandlerDescriptor - Symfony\Component\Messenger\Handler\HandlersLocatorInterface - Symfony\Component\Messenger\Stamp\AckStamp - Symfony\Component\Messenger\Stamp\FlushBatchHandlersStamp - Symfony\Component\Messenger\Stamp\HandledStamp - Symfony\Component\Messenger\Stamp\HandlerArgumentsStamp - Symfony\Component\Messenger\Stamp\NoAutoAckStamp - LoggerAwareTrait interfaces: - MiddlewareInterface