Curio client API
Documento de referência para criação de API's clientes do framework curio
Requisitos
Requisitos
Lista de requisitos para a API do cliente
- Desvincular do meio de comunicação. Deve funcionar para HTTP/1.0, Socket, WebSocket ou qualquer outro protocolo de preferência do cliente.
- Desvincular da estrutura/linguagem de dados. Deve funcionar para XML, JSON ou qualquer outra estrutura/linguagem de dados de preferência do cliente.
- Garantir a possibilidade de implementação, caso desejado, de interceptadores de comunicação para tratamento de erros generalizados ou qualquer outra questão que envolva intercepção das mensagens.
- Encapsular e rotular todos os possíveis tipos de erros que o sistema reconhece, garantindo assim que seja possível implementação diferenciada de tratamento de erros. Lembrando do comprometimento com o item 2. Ex:
ConnectionErrorSystemErrorBusinessErrorTimeoutError(talvez um sub tipo deConnectionError)SessionExpireErrorRequestRecipientNotFoundError - Criar a noção de Sessão e de casos de uso instanciados disponíveis.
- Implementar uma forma fácil e não intrusiva de mandar e receber mensagens apesar do item 3.
- Implementar Uma forma de extensão através de Plugins, Ex:
Plugin de persistência para manter viva a sessão atual e casos de uso ativos.
Plugin de timeout para forçar alguma forma diferencial de ciclo de vida em um determinado caso de uso.
Plugin de debug para monitorar toda a comunicação.
Requisitos
Lista de requisitos para o framework
- Rotular todos os possíveis tipos de erros que o sistema reconhece.
Modelo
Referência do o que tem que ser criado tendo em mente os requisitos.
Modelo
Diagrama de Classe
CurioLab
Aplicativo para executar caso de usos.
CurioLab
Get Service Properties
Configurações para se obter as propriedades de serviço da banseg: