From a053dd6745ff21858405c7ac9ad8ca8d977a53e9 Mon Sep 17 00:00:00 2001 From: cm-collins Date: Wed, 1 Oct 2025 15:43:07 +0300 Subject: [PATCH] feat: update endpoint routing from the server and proper error handling --- .../ui/features/auth/data/remote/api/GitHubAuthApi.kt | 11 +++++------ .../auth/data/repository/AuthRepositoryImpl.kt | 2 +- .../presentation/activity/OAuthCallbackActivity.kt | 2 +- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/app/src/main/java/com/example/devops/ui/features/auth/data/remote/api/GitHubAuthApi.kt b/app/src/main/java/com/example/devops/ui/features/auth/data/remote/api/GitHubAuthApi.kt index 42ec0eb..40b92e3 100644 --- a/app/src/main/java/com/example/devops/ui/features/auth/data/remote/api/GitHubAuthApi.kt +++ b/app/src/main/java/com/example/devops/ui/features/auth/data/remote/api/GitHubAuthApi.kt @@ -6,18 +6,17 @@ import retrofit2.http.* interface GitHubAuthApi { - @GET("oauth/github") + @GET("auth/oauth/github") suspend fun initiateOAuth(@Query("mobile") mobile: Boolean = true): Response - @POST("oauth/github/callback") + @POST("auth/oauth/github/callback/api") suspend fun handleCallback( - @Body request: OAuthCallbackDto, - @Query("mobile") mobile: Boolean = true + @Body request: OAuthCallbackDto ): Response - @POST("refresh") + @POST("auth/refresh") suspend fun refreshToken(@Body request: RefreshTokenDto): Response - @POST("logout") + @POST("auth/logout") suspend fun logout(): Response } \ No newline at end of file diff --git a/app/src/main/java/com/example/devops/ui/features/auth/data/repository/AuthRepositoryImpl.kt b/app/src/main/java/com/example/devops/ui/features/auth/data/repository/AuthRepositoryImpl.kt index d9f1dd8..1eaacf8 100644 --- a/app/src/main/java/com/example/devops/ui/features/auth/data/repository/AuthRepositoryImpl.kt +++ b/app/src/main/java/com/example/devops/ui/features/auth/data/repository/AuthRepositoryImpl.kt @@ -36,7 +36,7 @@ class AuthRepositoryImpl @Inject constructor( return try { android.util.Log.d("AuthRepository", "Handling OAuth callback - code: ${code.take(10)}..., state: ${state.take(10)}...") val request = OAuthCallbackDto(code = code, state = state) - val response = remoteDataSource.handleCallback(request, mobile = true) + val response = remoteDataSource.handleCallback(request) android.util.Log.d("AuthRepository", "Response code: ${response.code()}, isSuccessful: ${response.isSuccessful}") diff --git a/app/src/main/java/com/example/devops/ui/features/auth/presentation/activity/OAuthCallbackActivity.kt b/app/src/main/java/com/example/devops/ui/features/auth/presentation/activity/OAuthCallbackActivity.kt index eb55e77..2d7969c 100644 --- a/app/src/main/java/com/example/devops/ui/features/auth/presentation/activity/OAuthCallbackActivity.kt +++ b/app/src/main/java/com/example/devops/ui/features/auth/presentation/activity/OAuthCallbackActivity.kt @@ -62,7 +62,7 @@ class OAuthCallbackActivity : ComponentActivity() { navigateToMain() } code != null && state != null -> { - Log.d("OAuthCallback", "Received OAuth code, need to exchange for tokens") + Log.d("OAuthCallback", "Received OAuth code, exchanging for tokens via API") authViewModel.handleEvent(AuthEvent.HandleOAuthCallback(code, state)) finish() }