MiddlewareDispatcher
in package
FinalYes
Table of Contents
Properties
- $middlewares : array{webhook: array, receiving: array, sending: array, webhook_event: array}
Methods
- addReceiving() : void
- addSending() : void
- addWebhook() : void
- addWebhookEvent() : void
- getMiddlewares() : array<string|int, mixed>
- processReceiving() : Message|null
- processSending() : PostableMessage|null
- processWebhook() : ResponseInterface
- processWebhookEvent() : Adapter
- buildPipeline() : mixed
- callMiddleware() : mixed
- process() : mixed
Properties
$middlewares
private
array{webhook: array, receiving: array, sending: array, webhook_event: array}
$middlewares
= ['webhook' => [], 'receiving' => [], 'sending' => [], 'webhook_event' => []]
Methods
addReceiving()
public
addReceiving(ReceivingMiddleware $middleware) : void
Parameters
- $middleware : ReceivingMiddleware
addSending()
public
addSending(SendingMiddleware $middleware) : void
Parameters
- $middleware : SendingMiddleware
addWebhook()
public
addWebhook(WebhookMiddleware $middleware) : void
Parameters
- $middleware : WebhookMiddleware
addWebhookEvent()
public
addWebhookEvent(WebhookEventMiddleware $middleware) : void
Parameters
- $middleware : WebhookEventMiddleware
getMiddlewares()
public
getMiddlewares("webhook"|"receiving"|"sending"|"webhook_event" $type) : array<string|int, mixed>
Parameters
- $type : "webhook"|"receiving"|"sending"|"webhook_event"
Return values
array<string|int, mixed>processReceiving()
public
processReceiving(Message|null $message, Adapter $adapter, callable(Array, Adapter): Array $handler) : Message|null
Parameters
Return values
Message|nullprocessSending()
public
processSending(string $threadId, PostableMessage $message, Adapter $adapter, string $operation, callable(string, PostableMessage, Adapter, string): Array $handler) : PostableMessage|null
Parameters
- $threadId : string
- $message : PostableMessage
- $adapter : Adapter
- $operation : string
- $handler : callable(string, PostableMessage, Adapter, string): Array
Return values
PostableMessage|nullprocessWebhook()
public
processWebhook(ServerRequestInterface $request, callable(ServerRequestInterface): ResponseInterface $handler) : ResponseInterface
Parameters
- $request : ServerRequestInterface
- $handler : callable(ServerRequestInterface): ResponseInterface
Return values
ResponseInterfaceprocessWebhookEvent()
public
processWebhookEvent(WebhookEvent $event, Adapter $adapter, callable(WebhookEvent, Adapter): Adapter $handler) : Adapter
Parameters
- $event : WebhookEvent
- $adapter : Adapter
- $handler : callable(WebhookEvent, Adapter): Adapter
Return values
AdapterbuildPipeline()
private
buildPipeline(array<string|int, mixed> $middlewares, mixed $context, callable $handler) : mixed
Parameters
- $middlewares : array<string|int, mixed>
- $context : mixed
- $handler : callable
callMiddleware()
private
callMiddleware(object $m, array<string|int, mixed> $args, callable $next) : mixed
Parameters
- $m : object
- $args : array<string|int, mixed>
- $next : callable
process()
private
process("webhook"|"receiving"|"sending" $type, mixed $context, callable $handler) : mixed
Parameters
- $type : "webhook"|"receiving"|"sending"
- $context : mixed
- $handler : callable