@lybioit/component-interface-pattern
Version:
Padrão de Interface de Componente - Abstrações para desenvolvimento de componentes reutilizáveis. Projeto da disciplina BRADEPO do IFSP-BRA.
45 lines • 1.66 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.StandardPortOutbox = void 0;
const PortOutbox_1 = require("./PortOutbox");
/**
* StandardPortOutbox (Caixa de Saída Padrão de Porto)
*
* Especialização abstrata de PortOutbox voltada ao envio de invocação de
* operações requeridas a exatamente um componente. Seu único atributo é
* voltado a apontar o porto a que se destinam as invocações.
*
* Esta implementação é ideal para comunicação ponto-a-ponto entre componentes,
* onde cada caixa de saída se conecta a um único porto externo.
*
* @abstract Esta classe deve ser estendida para implementar comportamentos específicos
*/
class StandardPortOutbox extends PortOutbox_1.PortOutbox {
constructor() {
super(...arguments);
/** Porta externa à qual esta caixa de saída está conectada */
this.externalPort = null;
}
/**
* Conecta esta caixa de saída a um porto externo.
*
* Estabelece uma conexão direta com um único porto de interface,
* permitindo comunicação unidirecional com o componente associado.
*
* @param externalPort - O porto externo ao qual se conectar
*/
connect(externalPort) {
this.externalPort = externalPort;
}
/**
* Desconecta esta caixa de saída do porto externo.
*
* Remove a conexão com o porto externo, efetivamente isolando
* esta caixa de saída de qualquer comunicação externa.
*/
disconnect() {
this.externalPort = null;
}
}
exports.StandardPortOutbox = StandardPortOutbox;
//# sourceMappingURL=StandardPortOutbox.js.map