Skip to content

Commit

Permalink
Rename for TV Series
Browse files Browse the repository at this point in the history
  • Loading branch information
alirezaeiii committed Nov 6, 2024
1 parent 003087f commit ee788cb
Show file tree
Hide file tree
Showing 14 changed files with 42 additions and 42 deletions.
32 changes: 16 additions & 16 deletions core/data/src/main/java/com/sample/tmdb/data/di/RepositoryModule.kt
Original file line number Diff line number Diff line change
Expand Up @@ -18,14 +18,14 @@ import com.sample.tmdb.data.repository.tvshow.TVShowFeedRepository
import com.sample.tmdb.data.repository.tvshow.detail.BookmarkTVShowDetailsRepositoryImpl
import com.sample.tmdb.data.repository.tvshow.detail.BookmarkTVShowRepository
import com.sample.tmdb.data.repository.tvshow.detail.TVShowDetailRepository
import com.sample.tmdb.data.repository.tvshow.paging.AiringTodayTvSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.DiscoverTvSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.OnTheAirTvSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.PopularTvSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.SearchTvSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.SimilarTvSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.TopRatedTvSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.TrendingTvSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.AiringTodayTVSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.DiscoverTVSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.OnTheAirTVSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.PopularTVSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.SearchTVSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.SimilarTVSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.TopRatedTVSeriesPagingRepository
import com.sample.tmdb.data.repository.tvshow.paging.TrendingTVSeriesPagingRepository
import com.sample.tmdb.domain.model.Movie
import com.sample.tmdb.domain.model.MovieDetails
import com.sample.tmdb.domain.model.Person
Expand Down Expand Up @@ -134,56 +134,56 @@ abstract class RepositoryModule {
@Trending
@Binds
internal abstract fun bindTrendingTVShowRepository(
trendingTvSeriesPagingRepository: TrendingTvSeriesPagingRepository,
trendingTvSeriesPagingRepository: TrendingTVSeriesPagingRepository,
): BasePagingRepository<TVShow>

@Singleton
@Popular
@Binds
internal abstract fun bindPopularTVShowRepository(
popularTvSeriesPagingRepository: PopularTvSeriesPagingRepository,
popularTvSeriesPagingRepository: PopularTVSeriesPagingRepository,
): BasePagingRepository<TVShow>

@Singleton
@NowPlaying
@Binds
internal abstract fun bindAiringTodayTVShowRepository(
airingTodayTvSeriesPagingRepository: AiringTodayTvSeriesPagingRepository,
airingTodayTvSeriesPagingRepository: AiringTodayTVSeriesPagingRepository,
): BasePagingRepository<TVShow>

@Singleton
@Latest
@Binds
internal abstract fun bindOnTheAirTVShowRepository(
onTheAirTvSeriesPagingRepository: OnTheAirTvSeriesPagingRepository,
onTheAirTvSeriesPagingRepository: OnTheAirTVSeriesPagingRepository,
): BasePagingRepository<TVShow>

@Singleton
@TopRated
@Binds
internal abstract fun bindTopRatedTVShowRepository(
topRatedTvSeriesPagingRepository: TopRatedTvSeriesPagingRepository,
topRatedTvSeriesPagingRepository: TopRatedTVSeriesPagingRepository,
): BasePagingRepository<TVShow>

@Singleton
@Discover
@Binds
internal abstract fun bindDiscoverTVShowRepository(
discoverTvSeriesPagingRepository: DiscoverTvSeriesPagingRepository,
discoverTvSeriesPagingRepository: DiscoverTVSeriesPagingRepository,
): BasePagingRepository<TVShow>

@Singleton
@Similar
@Binds
internal abstract fun bindSimilarTVShowRepository(
similarTvSeriesPagingRepository: SimilarTvSeriesPagingRepository,
similarTvSeriesPagingRepository: SimilarTVSeriesPagingRepository,
): BasePagingRepository<TVShow>

@Singleton
@Search
@Binds
internal abstract fun bindSearchTVShowRepository(
searchTvSeriesPagingRepository: SearchTvSeriesPagingRepository,
searchTvSeriesPagingRepository: SearchTVSeriesPagingRepository,
): BasePagingRepository<TVShow>

@Singleton
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,18 +49,18 @@ interface MovieService {
@GET("3/movie/{movieId}/credits")
suspend fun movieCredit(@Path("movieId") movieId: Int): NetworkCreditWrapper

@GET("3/movie/{movie_id}")
suspend fun fetchMovieDetail(@Path("movie_id") movieId: Int): MovieDetailResponse
@GET("3/movie/{movieId}")
suspend fun fetchMovieDetail(@Path("movieId") movieId: Int): MovieDetailResponse

@GET("3/search/movie")
suspend fun searchMovies(@Query("page") page: Int, @Query("query") query: String): TMDbWrapper<NetworkMovie>

@GET("3/movie/{movie_id}/images")
suspend fun fetchImages(@Path("movie_id") movieId: Int): ImagesResponse
@GET("3/movie/{movieId}/images")
suspend fun fetchImages(@Path("movieId") movieId: Int): ImagesResponse

@GET("3/movie/{movie_id}/similar")
suspend fun fetchSimilarMovies(@Path("movie_id") movieId: Int): TMDbWrapper<NetworkMovie>
@GET("3/movie/{movieId}/similar")
suspend fun fetchSimilarMovies(@Path("movieId") movieId: Int): TMDbWrapper<NetworkMovie>

@GET("3/movie/{movie_id}/similar")
suspend fun fetchSimilarMovies(@Path("movie_id") movieId: Int, @Query("page") page: Int): TMDbWrapper<NetworkMovie>
@GET("3/movie/{movieId}/similar")
suspend fun fetchSimilarMovies(@Path("movieId") movieId: Int, @Query("page") page: Int): TMDbWrapper<NetworkMovie>
}
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,10 @@ interface TVShowService {
suspend fun discoverTVSeries(@Query("page") page: Int): TMDbWrapper<NetworkTVShow>

@GET("3/tv/{tvId}/credits")
suspend fun tvCredit(@Path("tvId") tvId: Int): NetworkCreditWrapper
suspend fun fetchTVSeriesCredit(@Path("tvId") tvId: Int): NetworkCreditWrapper

@GET("3/tv/{tvId}")
suspend fun fetchTvDetail(@Path("tvId") tvId: Int): TvDetailResponse
suspend fun fetchTVSeriesDetail(@Path("tvId") tvId: Int): TvDetailResponse

@GET("3/search/tv")
suspend fun searchTVSeries(@Query("page") page: Int, @Query("query") query: String): TMDbWrapper<NetworkTVShow>
Expand All @@ -61,6 +61,6 @@ interface TVShowService {
@GET("3/tv/{tvId}/similar")
suspend fun fetchSimilarTVSeries(@Path("tvId") tvId: Int): TMDbWrapper<NetworkTVShow>

@GET("3/tv/{TvId}/similar")
suspend fun fetchSimilarTVSeries(@Path("TvId") tvId: Int, @Query("page") page: Int): TMDbWrapper<NetworkTVShow>
@GET("3/tv/{tvId}/similar")
suspend fun fetchSimilarTVSeries(@Path("tvId") tvId: Int, @Query("page") page: Int): TMDbWrapper<NetworkTVShow>
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,10 @@ class TVShowDetailRepository @Inject constructor(
@ApplicationContext context: Context,
@IoDispatcher ioDispatcher: CoroutineDispatcher,
) : BaseDetailRepository<TvDetails>(context, ioDispatcher) {
override suspend fun getDetails(id: Int): TvDetails = tvShowApi.fetchTvDetail(id).asDomainModel()
override suspend fun getDetails(id: Int): TvDetails = tvShowApi.fetchTVSeriesDetail(id).asDomainModel()

override suspend fun getCredit(id: Int): Pair<List<Cast>, List<Crew>> {
val networkCreditWrapper = tvShowApi.tvCredit(id)
val networkCreditWrapper = tvShowApi.fetchTVSeriesCredit(id)
return Pair(
networkCreditWrapper.cast.asCastDomainModel(),
networkCreditWrapper.crew.asCrewDomainModel(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import javax.inject.Inject
import javax.inject.Singleton

@Singleton
class AiringTodayTvSeriesPagingRepository @Inject constructor(
class AiringTodayTVSeriesPagingRepository @Inject constructor(
@ApplicationContext private val context: Context,
private val tvShowApi: TVShowService,
) : BasePagingRepository<TVShow>() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import javax.inject.Inject
import javax.inject.Singleton

@Singleton
class DiscoverTvSeriesPagingRepository @Inject constructor(
class DiscoverTVSeriesPagingRepository @Inject constructor(
@ApplicationContext private val context: Context,
private val tvShowApi: TVShowService,
) : BasePagingRepository<TVShow>() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import javax.inject.Inject
import javax.inject.Singleton

@Singleton
class OnTheAirTvSeriesPagingRepository @Inject constructor(
class OnTheAirTVSeriesPagingRepository @Inject constructor(
@ApplicationContext private val context: Context,
private val tvShowApi: TVShowService,
) : BasePagingRepository<TVShow>() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import javax.inject.Inject
import javax.inject.Singleton

@Singleton
class PopularTvSeriesPagingRepository @Inject constructor(
class PopularTVSeriesPagingRepository @Inject constructor(
@ApplicationContext private val context: Context,
private val tvShowApi: TVShowService,
) : BasePagingRepository<TVShow>() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import dagger.hilt.android.qualifiers.ApplicationContext
import javax.inject.Inject

class
SearchTvSeriesPagingRepository @Inject constructor(
SearchTVSeriesPagingRepository @Inject constructor(
@ApplicationContext private val context: Context,
private val tvShowApi: TVShowService,
) : BasePagingRepository<TVShow>() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import javax.inject.Inject
import javax.inject.Singleton

@Singleton
class SimilarTvSeriesPagingRepository @Inject constructor(
class SimilarTVSeriesPagingRepository @Inject constructor(
@ApplicationContext private val context: Context,
private val tvShowApi: TVShowService,
) : BasePagingRepository<TVShow>() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import javax.inject.Inject
import javax.inject.Singleton

@Singleton
class TopRatedTvSeriesPagingRepository @Inject constructor(
class TopRatedTVSeriesPagingRepository @Inject constructor(
@ApplicationContext private val context: Context,
private val tvShowApi: TVShowService,
) : BasePagingRepository<TVShow>() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ import javax.inject.Inject
import javax.inject.Singleton

@Singleton
class TrendingTvSeriesPagingRepository @Inject constructor(
class TrendingTVSeriesPagingRepository @Inject constructor(
@ApplicationContext private val context: Context,
private val tvShowApi: TVShowService,
) : BasePagingRepository<TVShow>() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ class TVShowDetailRepositoryTest : BaseDetailRepositoryTest<TvDetails>() {
}

override fun mockApiResponse() = runTest {
`when`(api.fetchTvDetail(anyInt())).thenReturn(
`when`(api.fetchTVSeriesDetail(anyInt())).thenReturn(
TvDetailResponse(
BACKDROP_PATH,
emptyList(),
Expand All @@ -45,7 +45,7 @@ class TVShowDetailRepositoryTest : BaseDetailRepositoryTest<TvDetails>() {
VOTE_COUNT,
),
)
`when`(api.tvCredit(anyInt())).thenReturn(NetworkCreditWrapper(emptyList(), emptyList()))
`when`(api.fetchTVSeriesCredit(anyInt())).thenReturn(NetworkCreditWrapper(emptyList(), emptyList()))
`when`(api.fetchImages(anyInt())).thenReturn(ImagesResponse(emptyList(), ID, emptyList()))
`when`(api.fetchSimilarTVSeries(anyInt())).thenReturn(TMDbWrapper(emptyList()))
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ fun BookmarkScreen(navController: NavController, coroutineScope: CoroutineScope
) { page ->
when (page) {
MediaTab.Movies.ordinal -> MoviesTabContent(navController)
MediaTab.TvShows.ordinal -> TVShowsTabContent(navController)
MediaTab.TVShows.ordinal -> TVShowsTabContent(navController)
}
}
}
Expand Down Expand Up @@ -218,5 +218,5 @@ private fun isEmptyImageVisible(): Boolean {

enum class MediaTab(@StringRes val titleResourceId: Int) {
Movies(titleResourceId = R.string.movie),
TvShows(titleResourceId = R.string.tv_show),
TVShows(titleResourceId = R.string.tv_show),
}

0 comments on commit ee788cb

Please sign in to comment.