Recentemente, enquanto gastava meu tempo navegando em coisas aleatórias, me deparei com um projeto interessante do Axel Fuhrmann.
Trata-se de uma API Rest para consulta de informações do desenho Rick and Morty do Adult Swim (o qual eu sou fã de carteirinha).
A API traz informações sobre personagens (Characters), episódios e planetas (Locations) relacionados entre si. A forma de consulta e simples e objetiva e eu gostei muito do que pude ver.
Consultando a Documentação da API pude verificar que diversas implementações de clientes nativos para várias linguagens (tais como Python, Ruby, Elixir, etc…)e vi que não havia uma versão Java para tal. Neste momento, resolvi implementar esse cliente nativo em Java. Eis que nasce a Rick and Morty API Java Client.
O cliente e bem simples e consiste em encapsular as chamadas para o serviço de forma intuitiva para cada Objeto desejado. Por exemplo, digamos que queiramos obter informações do Personagem Rick Sanchez, que na API esta relacionado com o ID 1. Faríamos algo como:
1 2 3 4 5 6 |
// Iniciamos um objeto Character com o ID 1 Character rickSanchez = character.setId(1); // Atualizamos os dados do modelo rickSanchez.refresh(); // Verificando o nome do modelo atualmente assertEquals("Rick Sanchez", rickSanchez.getName()); |
Da mesma forma, cada relacionamento traz uma lista de Objetos contendo apenas o ID do mesmo e deve ser feito o refresh
para fazer o fetch das informações da API.
Implementar este cliente foi um exercício interessante e eu gostei muito do resultado. Espero que gostem!