ExchangeComponent
        
        extends AbstractComponent
    
    
            
            in package
            
        
    
            
            implements
                            ExchangeComponentInterface                    
    
    
Componente "billing.exchange".
Este componente se encarga de la gestión de intercambio de documentos tributarios.
Attributes
- #[Component]
- $name: 'exchange'
- $package: 'billing'
Table of Contents
Interfaces
- ExchangeComponentInterface
- Interfaz para `ExchangeComponent`.
Properties
Methods
- __construct() : mixed
- Constructor del componente con sus dependencias.
- getReceiverWorker() : ReceiverWorkerInterface
- Entrega el worker "billing.exchange.receiver".
- getSenderWorker() : SenderWorkerInterface
- Entrega el worker "billing.exchange.sender".
- getWorkers() : array<string|int, mixed>
- {@inheritDoc}
- handle() : array<string|int, ExchangeResultInterface>
- Procesa una bolsa de intercambio, sus sobres y documentos.
- receive() : array<string|int, ExchangeResultInterface>
- Recibe documentos a través del proceso de intercambio mediante la estrategia definida en la bolsa.
- send() : array<string|int, ExchangeResultInterface>
- Envía documentos a través del proceso de intercambio mediante la estrategia definida en la bolsa.
Properties
$receiverWorker
        private
            ReceiverWorkerInterface
    $receiverWorker
    
    
    
    
    
    
$senderWorker
        private
            SenderWorkerInterface
    $senderWorker
    
    
    
    
    
    
Methods
__construct()
Constructor del componente con sus dependencias.
    public
                    __construct(ReceiverWorkerInterface $receiverWorker, SenderWorkerInterface $senderWorker) : mixed
    Parameters
- $receiverWorker : ReceiverWorkerInterface
- $senderWorker : SenderWorkerInterface
getReceiverWorker()
Entrega el worker "billing.exchange.receiver".
    public
                    getReceiverWorker() : ReceiverWorkerInterface
    Return values
ReceiverWorkerInterfacegetSenderWorker()
Entrega el worker "billing.exchange.sender".
    public
                    getSenderWorker() : SenderWorkerInterface
    Return values
SenderWorkerInterfacegetWorkers()
{@inheritDoc}
    public
                    getWorkers() : array<string|int, mixed>
    Return values
array<string|int, mixed>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 y 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.
receive()
Recibe documentos a través del proceso de intercambio mediante la estrategia definida en la bolsa.
    public
                    receive(ExchangeBagInterface $bag) : array<string|int, ExchangeResultInterface>
    Parameters
- $bag : ExchangeBagInterface
- 
                    Bolsa con las opciones para realizar el intercambio de documentos. 
Return values
array<string|int, ExchangeResultInterface> —El resultado del intercambio donde cada resultado contiene un sobre con el estado de la recepción.
send()
Envía documentos a través del proceso de intercambio mediante la estrategia definida en la bolsa.
    public
                    send(ExchangeBagInterface $bag) : array<string|int, ExchangeResultInterface>
    Parameters
- $bag : ExchangeBagInterface
- 
                    Bolsa con los sobres y 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.