package com.battlelancer.seriesguide.modules; import com.battlelancer.seriesguide.BuildConfig; import com.battlelancer.seriesguide.tmdbapi.SgTmdb; import com.uwetrottmann.tmdb2.Tmdb; import com.uwetrottmann.tmdb2.services.ConfigurationService; import com.uwetrottmann.tmdb2.services.FindService; import com.uwetrottmann.tmdb2.services.MoviesService; import com.uwetrottmann.tmdb2.services.PeopleService; import com.uwetrottmann.tmdb2.services.SearchService; import com.uwetrottmann.tmdb2.services.TvService; import dagger.Module; import dagger.Provides; import javax.inject.Singleton; import okhttp3.OkHttpClient; @Module public class TmdbModule { @Singleton @Provides ConfigurationService provideConfigurationService(Tmdb tmdb) { return tmdb.configurationService(); } @Singleton @Provides FindService provideFindService(Tmdb tmdb) { return tmdb.findService(); } @Singleton @Provides MoviesService provideMovieService(Tmdb tmdb) { return tmdb.moviesService(); } @Singleton @Provides PeopleService providePeopleService(Tmdb tmdb) { return tmdb.personService(); } @Singleton @Provides SearchService provideSearchService(Tmdb tmdb) { return tmdb.searchService(); } @Singleton @Provides TvService provideTvService(Tmdb tmdb) { return tmdb.tvService(); } @Singleton @Provides Tmdb provideSgTmdb(OkHttpClient okHttpClient) { return new SgTmdb(okHttpClient, BuildConfig.TMDB_API_KEY); } }