Tratamento de exceções no SDK do Rapid para Java
O SDK do Rapid para Java usa exceções de tempo de execução (desmarcadas) para retransmitir erros. Na raiz da hierarquia de exceções está OpenWorldException
, a partir do qual todas as outras exceções são estendidas. OpenWorldException
nunca é lançado de modo direto.
Existem duas categorias de um OpenWorldException
:
OpenWorldServiceException
: lançado quando o serviço downstream retorna uma resposta de erro. Ou seja, quando o serviço recebeu a solicitação, mas não conseguiu processá-la. O objeto de exceção fornece ao cliente várias informações sobre o erro, incluindo um código de status HTTP e uma mensagem detalhada.OpenWorldAuthException
é um subtipo dessa exceção e é lançado quando a autenticação falha.OpenWorldClientException
: lançado em erros de cliente, seja ao tentar enviar a solicitação ou analisar a resposta. Por exemplo, umOpenWorldConfigurationException
é lançado se as credenciais não estiverem configuradas.
Como as exceções não são verificadas, o cliente decide quais usar. A princípio, um OpenWorldClientException
não deveria ser repetido e deve ser corrigido durante o desenvolvimento. Por outro lado, um OpenWorldServiceException
pode ser recuperável, como erros resultantes de um serviço temporariamente indisponível. Portanto, o tratamento de erros deve dar prioridade ao segundo caso.