@Override public PaginatedCollection<ComicSeries> getPage(Page page) throws MarvelApiException { int offset = page.getOffset(); int limit = page.getLimit(); MarvelResponse<SeriesCollectionDto> seriesApiResponse = seriesApiClient.getAll(offset, limit); SeriesCollectionDto seriesCollectionDto = seriesApiResponse.getResponse(); Collection<ComicSeries> comicSeries = mapper.reverseMap(seriesCollectionDto.getSeries()); PaginatedCollection<ComicSeries> comicSeriesPage = new PaginatedCollection<>(comicSeries); comicSeriesPage.setPage(page); comicSeriesPage.setHasMore( seriesCollectionDto.getOffset() + seriesCollectionDto.getCount() < seriesCollectionDto.getTotal()); return comicSeriesPage; }
@Override public String toString() { return "CharactersDto{" + "offset=" + getOffset() + ", limit=" + getLimit() + ", total=" + getTotal() + ", count=" + getCount() + ", characters=" + getSeries().toString() + '}'; } }
public MarvelResponse<SeriesDto> getSeriesById(String seriesId) throws MarvelApiException { if (seriesId == null || seriesId.isEmpty()) { throw new IllegalArgumentException("The seriesId must not be null or empty"); } SeriesApiRest api = getApi(SeriesApiRest.class); Call<MarvelResponse<SeriesCollectionDto>> call = api.getSerie(seriesId); MarvelResponse<SeriesCollectionDto> series = execute(call); SeriesCollectionDto seriesCollectionDto = series.getResponse(); if (seriesCollectionDto != null && seriesCollectionDto.getCount() > 0) { SeriesDto seriesDto = seriesCollectionDto.getSeries().get(0); MarvelResponse<SeriesDto> serieResponse = new MarvelResponse<>(series); serieResponse.setResponse(seriesDto); return serieResponse; } else { throw new MarvelApiException("Series not found", null); } }
private void assertGetAllSeriesResponseIsProperlyParsed( MarvelResponse<SeriesCollectionDto> series) { SeriesCollectionDto seriesCollectionDto = series.getResponse(); assertEquals(10, seriesCollectionDto.getCount()); assertEquals(10, seriesCollectionDto.getLimit()); assertEquals(0, seriesCollectionDto.getOffset()); assertEquals(1823, seriesCollectionDto.getTotal()); SeriesDto seriesDto = seriesCollectionDto.getSeries().get(0); assertIs5Ronnin(seriesDto); }