public MarvelResponse<CharactersDto> getAll(CharactersQuery charactersQuery) throws MarvelApiException { CharacterApiRest api = getApi(CharacterApiRest.class); Map<String, Object> queryAsMap = charactersQuery.toMap(); Call<MarvelResponse<CharactersDto>> call = api.getCharacters(queryAsMap); return execute(call); }
public MarvelResponse<CharacterDto> getCharacter(String characterId) throws MarvelApiException { if (characterId == null || characterId.isEmpty()) { throw new IllegalArgumentException("The CharacterId must not be null or empty"); } CharacterApiRest api = getApi(CharacterApiRest.class); Call<MarvelResponse<CharactersDto>> call = api.getCharacter(characterId); MarvelResponse<CharactersDto> characters = execute(call); CharactersDto charactersDto = characters.getResponse(); if (charactersDto != null && charactersDto.getCount() > 0) { CharacterDto characterDto = charactersDto.getCharacters().get(0); MarvelResponse<CharacterDto> characterResponse = new MarvelResponse<>(characters); characterResponse.setResponse(characterDto); return characterResponse; } else { throw new MarvelApiException("Character not found", null); } } }