PaginatedReadableDataSource<String, Character> createDataSource() { if (hasKeys()) { MarvelApiConfig marvelApiConfig = MarvelApiConfig.with(BuildConfig.MARVEL_PUBLIC_KEY, BuildConfig.MARVEL_PRIVATE_KEY); CharacterApiClient characterApiClient = new CharacterApiClient(marvelApiConfig); return new CharactersApiDataSource(characterApiClient); } else { return new CharactersFakeDataSource(); } }
<T> T getApi(Class<T> apiRest) { return marvelApiConfig.getRetrofit().create(apiRest); }
public MarvelApiConfig build() { if (retrofit == null) { retrofit = buildRetrofit(); } return new MarvelApiConfig(publicKey, privateKey, retrofit, debug); }
ComicSeriesDataSource createDataSource() { if (hasKeys()) { MarvelApiConfig marvelApiConfig = MarvelApiConfig.with(BuildConfig.MARVEL_PUBLIC_KEY, BuildConfig.MARVEL_PRIVATE_KEY); SeriesApiClient seriesApiClient = new SeriesApiClient(marvelApiConfig); return new ComicSeriesApiDataSource(seriesApiClient); } else { return new ComicSeriesFakeDataSource(); } }
@Test(expected = IllegalArgumentException.class) public void shouldThrowInvalidArgumentExceptionWhenCreateWithoutPrivateKey() { MarvelApiConfig.with(ANY_PUBLIC_KEY, null); }
@Test(expected = IllegalArgumentException.class) public void shouldThrowInvalidArgumentExceptionWhenCreateWithoutPublicKey() { MarvelApiConfig.with(null, ANY_PRIVATE_KEY); }