File tree Expand file tree Collapse file tree 6 files changed +38
-0
lines changed
data/home/src/main/java/com/terning/data/home Expand file tree Collapse file tree 6 files changed +38
-0
lines changed Original file line number Diff line number Diff line change @@ -3,6 +3,7 @@ package com.terning.data.home.datasource
33import com.terning.core.network.BaseResponse
44import com.terning.core.network.NonDataBaseResponse
55import com.terning.data.home.dto.request.ChangeFilterRequestDto
6+ import com.terning.data.home.dto.request.FcmTokenRequestDto
67import com.terning.data.home.dto.response.HomeFilteringInfoResponseDto
78import com.terning.data.home.dto.response.HomeRecommendInternResponseDto
89import com.terning.data.home.dto.response.HomeUpcomingInternResponseDto
@@ -18,4 +19,6 @@ interface HomeDataSource {
1819 suspend fun getFilteringInfo (): BaseResponse <HomeFilteringInfoResponseDto >
1920
2021 suspend fun putFilteringInfo (changeFilterRequestDto : ChangeFilterRequestDto ): NonDataBaseResponse
22+
23+ suspend fun sendFcmToken (fcmTokenRequestDto : FcmTokenRequestDto ): NonDataBaseResponse
2124}
Original file line number Diff line number Diff line change @@ -4,6 +4,7 @@ import com.terning.core.network.BaseResponse
44import com.terning.core.network.NonDataBaseResponse
55import com.terning.data.home.datasource.HomeDataSource
66import com.terning.data.home.dto.request.ChangeFilterRequestDto
7+ import com.terning.data.home.dto.request.FcmTokenRequestDto
78import com.terning.data.home.dto.response.HomeFilteringInfoResponseDto
89import com.terning.data.home.dto.response.HomeRecommendInternResponseDto
910import com.terning.data.home.dto.response.HomeUpcomingInternResponseDto
@@ -30,4 +31,7 @@ class HomeDataSourceImpl @Inject constructor(
3031
3132 override suspend fun putFilteringInfo (changeFilterRequestDto : ChangeFilterRequestDto ): NonDataBaseResponse =
3233 homeService.putFilteringInfo(changeFilterRequestDto)
34+
35+ override suspend fun sendFcmToken (fcmTokenRequestDto : FcmTokenRequestDto ): NonDataBaseResponse =
36+ homeService.sendFcmToken(fcmTokenRequestDto)
3337}
Original file line number Diff line number Diff line change 1+ package com.terning.data.home.dto.request
2+
3+ import kotlinx.serialization.SerialName
4+ import kotlinx.serialization.Serializable
5+
6+ @Serializable
7+ data class FcmTokenRequestDto (
8+ @SerialName(" fcmToken" )
9+ val fcmToken : String
10+ )
Original file line number Diff line number Diff line change 1+ package com.terning.data.home.mapper
2+
3+ import com.terning.data.home.dto.request.FcmTokenRequestDto
4+ import com.terning.domain.home.entity.FcmToken
5+
6+ fun FcmToken.toRequestDto (): FcmTokenRequestDto =
7+ FcmTokenRequestDto (
8+ fcmToken = fcmToken
9+ )
Original file line number Diff line number Diff line change @@ -9,8 +9,10 @@ import com.terning.data.home.dto.request.toChangeFilterRequestDto
99import com.terning.data.home.mapper.toHomeFilteringInfo
1010import com.terning.data.home.mapper.toHomeRecommendedIntern
1111import com.terning.data.home.mapper.toHomeUpcomingInternList
12+ import com.terning.data.home.mapper.toRequestDto
1213import com.terning.data.home.pagingsource.HomePagingSource
1314import com.terning.domain.home.entity.ChangeFilteringRequestModel
15+ import com.terning.domain.home.entity.FcmToken
1416import com.terning.domain.home.entity.HomeFilteringInfo
1517import com.terning.domain.home.entity.HomeRecommendedIntern
1618import com.terning.domain.home.entity.HomeUpcomingIntern
@@ -52,4 +54,9 @@ class HomeRepositoryImpl @Inject constructor(
5254 putFilteringRequest.toChangeFilterRequestDto()
5355 )
5456 }
57+
58+ override suspend fun sendFcmToken (fcmTokenRequest : FcmToken ): Result <Unit > =
59+ runCatching {
60+ homeDataSource.sendFcmToken(fcmTokenRequest.toRequestDto())
61+ }
5562}
Original file line number Diff line number Diff line change @@ -3,11 +3,13 @@ package com.terning.data.home.service
33import com.terning.core.network.BaseResponse
44import com.terning.core.network.NonDataBaseResponse
55import com.terning.data.home.dto.request.ChangeFilterRequestDto
6+ import com.terning.data.home.dto.request.FcmTokenRequestDto
67import com.terning.data.home.dto.response.HomeFilteringInfoResponseDto
78import com.terning.data.home.dto.response.HomeRecommendInternResponseDto
89import com.terning.data.home.dto.response.HomeUpcomingInternResponseDto
910import retrofit2.http.Body
1011import retrofit2.http.GET
12+ import retrofit2.http.POST
1113import retrofit2.http.PUT
1214import retrofit2.http.Query
1315
@@ -28,4 +30,7 @@ interface HomeService {
2830 suspend fun putFilteringInfo (
2931 @Body body : ChangeFilterRequestDto ,
3032 ): NonDataBaseResponse
33+
34+ @POST(" api/v1/auth/sync-user" )
35+ suspend fun sendFcmToken (@Body body : FcmTokenRequestDto ): NonDataBaseResponse
3136}
You can’t perform that action at this time.
0 commit comments