feat(chat): 채팅방 목록 API와 저장소를 추가한다
This commit is contained in:
@@ -177,6 +177,8 @@ import kr.co.vividnext.sodalive.user.find_password.FindPasswordViewModel
|
|||||||
import kr.co.vividnext.sodalive.user.login.LoginViewModel
|
import kr.co.vividnext.sodalive.user.login.LoginViewModel
|
||||||
import kr.co.vividnext.sodalive.user.signup.SignUpViewModel
|
import kr.co.vividnext.sodalive.user.signup.SignUpViewModel
|
||||||
import kr.co.vividnext.sodalive.v2.main.MainV2ViewModel
|
import kr.co.vividnext.sodalive.v2.main.MainV2ViewModel
|
||||||
|
import kr.co.vividnext.sodalive.v2.main.chat.data.ChatRoomApi
|
||||||
|
import kr.co.vividnext.sodalive.v2.main.chat.data.ChatRoomRepository
|
||||||
import kr.co.vividnext.sodalive.v2.main.home.HomeCreatorRankingViewModel
|
import kr.co.vividnext.sodalive.v2.main.home.HomeCreatorRankingViewModel
|
||||||
import kr.co.vividnext.sodalive.v2.main.home.HomeRecommendationViewModel
|
import kr.co.vividnext.sodalive.v2.main.home.HomeRecommendationViewModel
|
||||||
import kr.co.vividnext.sodalive.v2.main.home.data.HomeCreatorRankingApi
|
import kr.co.vividnext.sodalive.v2.main.home.data.HomeCreatorRankingApi
|
||||||
@@ -291,6 +293,7 @@ class AppDI(private val context: Context, isDebugMode: Boolean) {
|
|||||||
single { ApiBuilder().build(get(), SearchApi::class.java) }
|
single { ApiBuilder().build(get(), SearchApi::class.java) }
|
||||||
single { ApiBuilder().build(get(), PointStatusApi::class.java) }
|
single { ApiBuilder().build(get(), PointStatusApi::class.java) }
|
||||||
single { ApiBuilder().build(get(), HomeApi::class.java) }
|
single { ApiBuilder().build(get(), HomeApi::class.java) }
|
||||||
|
single { ApiBuilder().build(get(), ChatRoomApi::class.java) }
|
||||||
single { ApiBuilder().build(get(), HomeCreatorRankingApi::class.java) }
|
single { ApiBuilder().build(get(), HomeCreatorRankingApi::class.java) }
|
||||||
single { ApiBuilder().build(get(), HomeRecommendationApi::class.java) }
|
single { ApiBuilder().build(get(), HomeRecommendationApi::class.java) }
|
||||||
single { ApiBuilder().build(get(), CharacterApi::class.java) }
|
single { ApiBuilder().build(get(), CharacterApi::class.java) }
|
||||||
@@ -441,6 +444,7 @@ class AppDI(private val context: Context, isDebugMode: Boolean) {
|
|||||||
factory { UserEventRepository(get()) }
|
factory { UserEventRepository(get()) }
|
||||||
factory { PointStatusRepository(get()) }
|
factory { PointStatusRepository(get()) }
|
||||||
factory { HomeRepository(get()) }
|
factory { HomeRepository(get()) }
|
||||||
|
factory { ChatRoomRepository(get()) }
|
||||||
factory { HomeCreatorRankingRepository(get()) }
|
factory { HomeCreatorRankingRepository(get()) }
|
||||||
factory { HomeRecommendationRepository(get()) }
|
factory { HomeRecommendationRepository(get()) }
|
||||||
factory { CharacterTabRepository(get()) }
|
factory { CharacterTabRepository(get()) }
|
||||||
|
|||||||
@@ -0,0 +1,16 @@
|
|||||||
|
package kr.co.vividnext.sodalive.v2.main.chat.data
|
||||||
|
|
||||||
|
import io.reactivex.rxjava3.core.Single
|
||||||
|
import kr.co.vividnext.sodalive.common.ApiResponse
|
||||||
|
import retrofit2.http.GET
|
||||||
|
import retrofit2.http.Header
|
||||||
|
import retrofit2.http.Query
|
||||||
|
|
||||||
|
interface ChatRoomApi {
|
||||||
|
@GET("/api/v2/chat/rooms")
|
||||||
|
fun getChatRooms(
|
||||||
|
@Header("Authorization") authHeader: String,
|
||||||
|
@Query("filter") filter: String,
|
||||||
|
@Query("cursor") cursor: String?
|
||||||
|
): Single<ApiResponse<ChatRoomListPageResponse>>
|
||||||
|
}
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
package kr.co.vividnext.sodalive.v2.main.chat.data
|
||||||
|
|
||||||
|
import io.reactivex.rxjava3.core.Single
|
||||||
|
import kr.co.vividnext.sodalive.common.ApiResponse
|
||||||
|
|
||||||
|
class ChatRoomRepository(private val api: ChatRoomApi) {
|
||||||
|
fun getChatRooms(
|
||||||
|
token: String,
|
||||||
|
filter: String,
|
||||||
|
cursor: String?
|
||||||
|
): Single<ApiResponse<ChatRoomListPageResponse>> = api.getChatRooms(
|
||||||
|
authHeader = token,
|
||||||
|
filter = filter,
|
||||||
|
cursor = cursor
|
||||||
|
)
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user