Final Class Yiisoft\Queue\Middleware\FailureHandling\MiddlewareFactoryFailure
| Inheritance | Yiisoft\Queue\Middleware\FailureHandling\MiddlewareFactoryFailure |
|---|---|
| Implements | Yiisoft\Queue\Middleware\FailureHandling\MiddlewareFactoryFailureInterface |
Creates a middleware based on the definition provided.
Public Methods
Method Details
| public mixed __construct ( \Psr\Container\ContainerInterface $container, Yiisoft\Queue\Middleware\CallableFactory $callableFactory ) | ||
| $container | \Psr\Container\ContainerInterface |
Container to use for resolving definitions. |
| $callableFactory | Yiisoft\Queue\Middleware\CallableFactory | |
public function __construct(
private readonly ContainerInterface $container,
private readonly CallableFactory $callableFactory,
) {
}
| public Yiisoft\Queue\Middleware\FailureHandling\MiddlewareFailureInterface createFailureMiddleware ( array|callable|Yiisoft\Queue\Middleware\FailureHandling\MiddlewareFailureInterface|string $middlewareDefinition ) | ||
| $middlewareDefinition | array|callable|Yiisoft\Queue\Middleware\FailureHandling\MiddlewareFailureInterface|string |
Middleware definition in one of the following formats:
For handler action and callable typed parameters are automatically injected using dependency injection container. Current request and handler could be obtained by type-hinting for {@see \Yiisoft\Queue\Middleware\FailureHandling\ServerRequestInterface} and {@see \Yiisoft\Queue\Middleware\FailureHandling\RequestHandlerInterface}. |
| throws | \Psr\Container\NotFoundExceptionInterface | |
|---|---|---|
| throws | \Psr\Container\ContainerExceptionInterface | |
public function createFailureMiddleware(
MiddlewareFailureInterface|callable|array|string $middlewareDefinition
): MiddlewareFailureInterface {
if ($middlewareDefinition instanceof MiddlewareFailureInterface) {
return $middlewareDefinition;
}
if (is_string($middlewareDefinition)) {
return $this->getFromContainer($middlewareDefinition);
}
return $this->tryGetFromCallable($middlewareDefinition)
?? $this->tryGetFromArrayDefinition($middlewareDefinition)
?? throw new InvalidMiddlewareDefinitionException($middlewareDefinition);
}
Signup or Login in order to comment.