Abstract Class Yiisoft\Queue\Middleware\MiddlewareFactory
Protected Properties
| Property | Type | Description | Defined By |
|---|---|---|---|
| $container | \Psr\Container\ContainerInterface | Yiisoft\Queue\Middleware\MiddlewareFactory |
Public Methods
| Method | Description | Defined By |
|---|---|---|
| __construct() | Yiisoft\Queue\Middleware\MiddlewareFactory |
Protected Methods
Property Details
Method Details
| public mixed __construct ( \Psr\Container\ContainerInterface $container, Yiisoft\Queue\Middleware\CallableFactory $callableFactory ) | ||
| $container | \Psr\Container\ContainerInterface | |
| $callableFactory | Yiisoft\Queue\Middleware\CallableFactory | |
public function __construct(
protected readonly ContainerInterface $container,
private readonly CallableFactory $callableFactory,
) {}
| protected \Yiisoft\Queue\Middleware\T create ( callable|array|string $definition ) | ||
| $definition | callable|array|string |
Middleware definition in one of the following formats: |
| return | \Yiisoft\Queue\Middleware\T |
Middleware instance |
|---|---|---|
| throws | Yiisoft\Queue\Middleware\InvalidMiddlewareDefinitionException | |
protected function create(callable|array|string $definition): object
{
try {
$callable = $this->callableFactory->create($definition);
return $this->wrapMiddleware($callable);
} catch (InvalidCallableConfigurationException) {
// Not a callable, try internal checks
}
if (is_string($definition)) {
return $this->getFromContainer($definition);
}
if (is_array($definition)) {
return $this->tryGetFromArrayDefinition($definition)
?? throw new InvalidMiddlewareDefinitionException($definition);
}
throw new InvalidMiddlewareDefinitionException($definition);
}
| protected abstract class-string<\Yiisoft\Queue\Middleware\T> getInterfaceName ( ) | ||
| return | class-string<\Yiisoft\Queue\Middleware\T> |
Required interface FQCN |
|---|---|---|
abstract protected function getInterfaceName(): string;
| protected abstract \Yiisoft\Queue\Middleware\T wrapMiddleware ( callable $callback ) | ||
| $callback | callable |
Callable to wrap |
| return | \Yiisoft\Queue\Middleware\T |
Wrapped middleware |
|---|---|---|
abstract protected function wrapMiddleware(callable $callback): object;
Signup or Login in order to comment.