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

  1. Desvincular do meio de comunicação. Deve funcionar para HTTP/1.0SocketWebSocket ou qualquer outro protocolo de preferência do cliente.
  2. Desvincular da estrutura/linguagem de dados. Deve funcionar para XMLJSON ou qualquer outra estrutura/linguagem de dados de preferência do cliente.
  3. 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.
  4. 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:
    ConnectionError
    SystemError
    BusinessError
    TimeoutError (talvez um sub tipo de ConnectionError)
    SessionExpireError
    RequestRecipientNotFoundError
  5. Criar a noção de Sessão e de casos de uso instanciados disponíveis.
  6. Implementar uma forma fácil e não intrusiva de mandar e receber mensagens apesar do item 3.
  7. 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

  1. 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

Main.jpg

eDoMain.jpg

CurioLab

Aplicativo para executar caso de usos.

CurioLab

Get Service Properties

Configurações para se obter as propriedades de serviço da banseg: