diff --git a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/api/AuthRequestsApi.kt b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/api/AuthenticatedAuthRequestsApi.kt similarity index 64% rename from app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/api/AuthRequestsApi.kt rename to app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/api/AuthenticatedAuthRequestsApi.kt index 11af508339..453db3df19 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/api/AuthRequestsApi.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/api/AuthenticatedAuthRequestsApi.kt @@ -1,26 +1,16 @@ package com.x8bit.bitwarden.data.auth.datasource.network.api -import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestRequestJson import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestUpdateRequestJson import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestsResponseJson import retrofit2.http.Body import retrofit2.http.GET -import retrofit2.http.POST import retrofit2.http.PUT import retrofit2.http.Path /** - * Defines raw calls under the /auth-requests API. + * Defines authenticated raw calls under the /auth-requests API. */ -interface AuthRequestsApi { - - /** - * Notifies the server of a new authentication request. - */ - @POST("/auth-requests") - suspend fun createAuthRequest( - @Body body: AuthRequestRequestJson, - ): Result +interface AuthenticatedAuthRequestsApi { /** * Updates an authentication request. diff --git a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/api/UnauthenticatedAuthRequestsApi.kt b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/api/UnauthenticatedAuthRequestsApi.kt new file mode 100644 index 0000000000..93e7a7aab5 --- /dev/null +++ b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/api/UnauthenticatedAuthRequestsApi.kt @@ -0,0 +1,20 @@ +package com.x8bit.bitwarden.data.auth.datasource.network.api + +import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestRequestJson +import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestsResponseJson +import retrofit2.http.Body +import retrofit2.http.POST + +/** + * Defines unauthenticated raw calls under the /auth-requests API. + */ +interface UnauthenticatedAuthRequestsApi { + + /** + * Notifies the server of a new authentication request. + */ + @POST("/auth-requests") + suspend fun createAuthRequest( + @Body body: AuthRequestRequestJson, + ): Result +} diff --git a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/di/AuthNetworkModule.kt b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/di/AuthNetworkModule.kt index 563ebcb1de..7a249822a8 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/di/AuthNetworkModule.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/di/AuthNetworkModule.kt @@ -46,7 +46,7 @@ object AuthNetworkModule { fun providesAuthRequestsService( retrofits: Retrofits, ): AuthRequestsService = AuthRequestsServiceImpl( - authRequestsApi = retrofits.authenticatedApiRetrofit.create(), + authenticatedAuthRequestsApi = retrofits.authenticatedApiRetrofit.create(), ) @Provides @@ -84,7 +84,7 @@ object AuthNetworkModule { fun providesNewAuthRequestService( retrofits: Retrofits, ): NewAuthRequestService = NewAuthRequestServiceImpl( - authRequestsApi = retrofits.unauthenticatedApiRetrofit.create(), + unauthenticatedAuthRequestsApi = retrofits.unauthenticatedApiRetrofit.create(), ) @Provides @@ -92,6 +92,6 @@ object AuthNetworkModule { fun providesOrganizationService( retrofits: Retrofits, ): OrganizationService = OrganizationServiceImpl( - organizationApi = retrofits.unauthenticatedApiRetrofit.create(), + organizationApi = retrofits.unauthenticatedApiRetrofit.create(), ) } diff --git a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/service/AuthRequestsServiceImpl.kt b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/service/AuthRequestsServiceImpl.kt index bc558fc6aa..065135cf7b 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/service/AuthRequestsServiceImpl.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/service/AuthRequestsServiceImpl.kt @@ -1,14 +1,14 @@ package com.x8bit.bitwarden.data.auth.datasource.network.service -import com.x8bit.bitwarden.data.auth.datasource.network.api.AuthRequestsApi +import com.x8bit.bitwarden.data.auth.datasource.network.api.AuthenticatedAuthRequestsApi import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestUpdateRequestJson import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestsResponseJson class AuthRequestsServiceImpl( - private val authRequestsApi: AuthRequestsApi, + private val authenticatedAuthRequestsApi: AuthenticatedAuthRequestsApi, ) : AuthRequestsService { override suspend fun getAuthRequests(): Result = - authRequestsApi.getAuthRequests() + authenticatedAuthRequestsApi.getAuthRequests() override suspend fun updateAuthRequest( requestId: String, @@ -17,7 +17,7 @@ class AuthRequestsServiceImpl( deviceId: String, isApproved: Boolean, ): Result = - authRequestsApi.updateAuthRequest( + authenticatedAuthRequestsApi.updateAuthRequest( userId = requestId, body = AuthRequestUpdateRequestJson( key = key, diff --git a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/service/NewAuthRequestServiceImpl.kt b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/service/NewAuthRequestServiceImpl.kt index 8ebcd515fb..2b9e7b7e4f 100644 --- a/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/service/NewAuthRequestServiceImpl.kt +++ b/app/src/main/java/com/x8bit/bitwarden/data/auth/datasource/network/service/NewAuthRequestServiceImpl.kt @@ -1,6 +1,6 @@ package com.x8bit.bitwarden.data.auth.datasource.network.service -import com.x8bit.bitwarden.data.auth.datasource.network.api.AuthRequestsApi +import com.x8bit.bitwarden.data.auth.datasource.network.api.UnauthenticatedAuthRequestsApi import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestRequestJson import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestTypeJson import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestsResponseJson @@ -9,7 +9,7 @@ import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestsRespon * The default implementation of the [NewAuthRequestService]. */ class NewAuthRequestServiceImpl( - private val authRequestsApi: AuthRequestsApi, + private val unauthenticatedAuthRequestsApi: UnauthenticatedAuthRequestsApi, ) : NewAuthRequestService { override suspend fun createAuthRequest( email: String, @@ -18,7 +18,7 @@ class NewAuthRequestServiceImpl( accessCode: String, fingerprint: String, ): Result = - authRequestsApi.createAuthRequest( + unauthenticatedAuthRequestsApi.createAuthRequest( AuthRequestRequestJson( email = email, publicKey = publicKey, diff --git a/app/src/test/java/com/x8bit/bitwarden/data/auth/datasource/network/service/AuthRequestsServiceTest.kt b/app/src/test/java/com/x8bit/bitwarden/data/auth/datasource/network/service/AuthRequestsServiceTest.kt index c7a295a2dc..af6b2a6553 100644 --- a/app/src/test/java/com/x8bit/bitwarden/data/auth/datasource/network/service/AuthRequestsServiceTest.kt +++ b/app/src/test/java/com/x8bit/bitwarden/data/auth/datasource/network/service/AuthRequestsServiceTest.kt @@ -1,6 +1,6 @@ package com.x8bit.bitwarden.data.auth.datasource.network.service -import com.x8bit.bitwarden.data.auth.datasource.network.api.AuthRequestsApi +import com.x8bit.bitwarden.data.auth.datasource.network.api.AuthenticatedAuthRequestsApi import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestsResponseJson import com.x8bit.bitwarden.data.platform.base.BaseServiceTest import kotlinx.coroutines.test.runTest @@ -13,9 +13,9 @@ import java.time.ZonedDateTime class AuthRequestsServiceTest : BaseServiceTest() { - private val authRequestsApi: AuthRequestsApi = retrofit.create() + private val authRequestsApi: AuthenticatedAuthRequestsApi = retrofit.create() private val service = AuthRequestsServiceImpl( - authRequestsApi = authRequestsApi, + authenticatedAuthRequestsApi = authRequestsApi, ) @Test diff --git a/app/src/test/java/com/x8bit/bitwarden/data/auth/datasource/network/service/NewAuthRequestServiceTest.kt b/app/src/test/java/com/x8bit/bitwarden/data/auth/datasource/network/service/NewAuthRequestServiceTest.kt index 22b0fa2fdf..635c05a052 100644 --- a/app/src/test/java/com/x8bit/bitwarden/data/auth/datasource/network/service/NewAuthRequestServiceTest.kt +++ b/app/src/test/java/com/x8bit/bitwarden/data/auth/datasource/network/service/NewAuthRequestServiceTest.kt @@ -1,6 +1,6 @@ package com.x8bit.bitwarden.data.auth.datasource.network.service -import com.x8bit.bitwarden.data.auth.datasource.network.api.AuthRequestsApi +import com.x8bit.bitwarden.data.auth.datasource.network.api.UnauthenticatedAuthRequestsApi import com.x8bit.bitwarden.data.auth.datasource.network.model.AuthRequestsResponseJson import com.x8bit.bitwarden.data.platform.base.BaseServiceTest import kotlinx.coroutines.test.runTest @@ -13,9 +13,9 @@ import java.time.ZonedDateTime class NewAuthRequestServiceTest : BaseServiceTest() { - private val authRequestsApi: AuthRequestsApi = retrofit.create() + private val authRequestsApi: UnauthenticatedAuthRequestsApi = retrofit.create() private val service = NewAuthRequestServiceImpl( - authRequestsApi = authRequestsApi, + unauthenticatedAuthRequestsApi = authRequestsApi, ) @Test