Final Class Yiisoft\Queue\Middleware\Consume\ConsumeMiddlewareDispatcher
| Inheritance | Yiisoft\ |
|---|
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __construct() | Yiisoft\ |
|
| dispatch() | Dispatch request through middleware to get response. | Yiisoft\ |
Method Details
| public mixed __construct ( Yiisoft\ | ||
| $middlewareFactory | Yiisoft\ |
|
| $middlewareDefinitions | array|callable|string|Yiisoft\ |
|
public function __construct(
private readonly ConsumeMiddlewareFactoryInterface $middlewareFactory,
array|callable|string|ConsumeMiddlewareInterface ...$middlewareDefinitions,
) {
$this->middlewareDefinitions = array_reverse($middlewareDefinitions);
}
Dispatch request through middleware to get response.
| public Yiisoft\ | ||
| $request | Yiisoft\ |
Request to pass to middleware. |
| $finalHandler | Yiisoft\ |
Handler to use in case no middleware produced a response. |
public function dispatch(
ConsumeRequest $request,
ConsumeHandlerInterface $finalHandler,
): ConsumeRequest {
$type = $request->getMessage()->getType();
if (!array_key_exists($type, $this->stack)) {
$this->stack[$type] = new ConsumeMiddlewareStack($this->buildMiddlewares(), $finalHandler);
}
return $this->stack[$type]->handleConsume($request);
}
User Contributed Notes
Leave a comment
Join the conversation to share a note.