diff --git a/api-core/src/main/java/com/example/api/core/data/core/BaseApiRepository.kt b/api-core/src/main/java/com/example/api/core/data/core/BaseApiRepository.kt index 4c92127..bbb520a 100644 --- a/api-core/src/main/java/com/example/api/core/data/core/BaseApiRepository.kt +++ b/api-core/src/main/java/com/example/api/core/data/core/BaseApiRepository.kt @@ -3,8 +3,8 @@ package com.example.api.core.data.core import com.example.api.core.domain.ApiRepository import com.example.api.core.domain.AuthUserResponse import com.example.api.core.domain.FetchResult -import com.example.api.core.domain.RegisterUser import com.example.api.core.domain.Projects +import com.example.api.core.domain.RegisterUser import retrofit2.HttpException import java.net.UnknownHostException @@ -50,6 +50,12 @@ internal class BaseApiRepository( response.toUserResponse() } + override suspend fun signIn(registerUser: RegisterUser): FetchResult = handle.handle { + val response = service.auth(registerUser.toSignInUserDto()) + dataStoreRepository.saveToken(response.token) + response.toUserResponse() + } + override suspend fun projects(): FetchResult = handle.handle { service.projects().toDomain() diff --git a/api-core/src/main/java/com/example/api/core/domain/ApiRepository.kt b/api-core/src/main/java/com/example/api/core/domain/ApiRepository.kt index dbd34c7..5d18032 100644 --- a/api-core/src/main/java/com/example/api/core/domain/ApiRepository.kt +++ b/api-core/src/main/java/com/example/api/core/domain/ApiRepository.kt @@ -9,5 +9,7 @@ interface ApiRepository { suspend fun auth(registerUser: RegisterUser): FetchResult + suspend fun signIn(registerUser: RegisterUser): FetchResult + suspend fun projects(): FetchResult } \ No newline at end of file