AbstractReceiverHandler
extends AbstractHandler
in package
implements
ExchangeHandlerInterface
Clase base para los handlers de receoción del proceso de intercambio.
Table of Contents
Interfaces
- ExchangeHandlerInterface
- Interfaz para los handlers del intercambio.
Properties
Methods
- __construct() : mixed
- Constructor del handler.
- handle() : array<string|int, ExchangeResultInterface>
- Procesa una bolsa de intercambio, sus sobres y documentos.
- hasRequiredData() : bool
- Determina si la bolsa tiene los datos mínimos necesarios.
- resolveStrategies() : array<string|int, string>
- Entrega las estrategias que efectivamente se pueden ejecutar con la bolsa que se ha pasado.
Properties
$receiverWorker
private
ReceiverWorkerInterface
$receiverWorker
Methods
__construct()
Constructor del handler.
public
__construct(ReceiverWorkerInterface $receiverWorker[, array<string|int, mixed> $strategies = [] ]) : mixed
Parameters
- $receiverWorker : ReceiverWorkerInterface
- $strategies : array<string|int, mixed> = []
-
Estrategias que este handler puede manejar.
handle()
Procesa una bolsa de intercambio, sus sobres y documentos.
public
handle(ExchangeBagInterface $bag) : array<string|int, ExchangeResultInterface>
Parameters
- $bag : ExchangeBagInterface
-
Bolsa con los sobres, si corresponde, y las opciones para realizar el intercambio de documentos.
Return values
array<string|int, ExchangeResultInterface> —Los resultados de procesar los sobres de la bolsa. Tiene el estado de cada estrategia que procesó el sobre.
hasRequiredData()
Determina si la bolsa tiene los datos mínimos necesarios.
protected
abstract hasRequiredData(ExchangeBagInterface $bag) : bool
Estos datos mínimos son independientes de la estrategia que use el handler, pero están relacionados. Por ejemplo, estrategias que reciben los documentos por correo electrónico requerirán los datos del transporte.
Parameters
- $bag : ExchangeBagInterface
Return values
boolresolveStrategies()
Entrega las estrategias que efectivamente se pueden ejecutar con la bolsa que se ha pasado.
protected
resolveStrategies(ExchangeBagInterface $bag) : array<string|int, string>
Este método revisa cada estrategia pasando la bolsa para saber si la estrategia la puede procesar.
Parameters
- $bag : ExchangeBagInterface
Return values
array<string|int, string> —Códigos de las estrategias que se pueden ejecutar.