Browse Source

Removed access-token parameter from all requests

Vadik Sirekanyan 7 năm trước cách đây
mục cha
commit
efe5c27195

+ 2 - 2
app/src/main/java/com/sirekanyan/knigopis/dependency/app.kt

@@ -35,11 +35,11 @@ fun App.provideAuthRepository(): AuthRepository =
 fun App.provideBookRepository(): BookRepository {
     val planned = PlannedBookOrganizerImpl(resourceProvider, config)
     val finished = FinishedBookOrganizerImpl(resourceProvider)
-    return BookRepositoryImpl(endpoint, cache, authRepository, planned, finished, networkChecker)
+    return BookRepositoryImpl(endpoint, cache, planned, finished, networkChecker)
 }
 
 fun App.provideUserRepository(): UserRepository =
-    UserRepositoryImpl(endpoint, cache, authRepository, networkChecker)
+    UserRepositoryImpl(endpoint, cache, networkChecker)
 
 fun App.provideNoteRepository(): NoteRepository =
     NoteRepositoryImpl(endpoint, cache, networkChecker)

+ 1 - 1
app/src/main/java/com/sirekanyan/knigopis/dependency/user.kt

@@ -5,7 +5,7 @@ import com.sirekanyan.knigopis.common.extensions.getRootView
 import com.sirekanyan.knigopis.feature.user.*
 
 fun UserActivity.providePresenter(id: String, name: String, image: String?): UserPresenter {
-    val interactor = UserInteractorImpl(app.authRepository, app.endpoint, app.resourceProvider)
+    val interactor = UserInteractorImpl(app.endpoint, app.resourceProvider)
     return UserPresenterImpl(this, interactor, id, name, image, app.resourceProvider)
         .also { it.view = UserViewImpl(getRootView(), it, provideDialogs()) }
 }

+ 2 - 4
app/src/main/java/com/sirekanyan/knigopis/feature/profile/ProfileInteractor.kt

@@ -28,10 +28,8 @@ class ProfileInteractorImpl(
     private val authRepository: AuthRepository
 ) : ProfileInteractor {
 
-    private val accessToken get() = authRepository.getAccessToken()
-
     override fun getProfile(): Single<User> =
-        api.getProfile(accessToken)
+        api.getProfile()
             .io2main()
 
     override fun getBooks(): Observable<BookDataModel> =
@@ -49,7 +47,7 @@ class ProfileInteractorImpl(
             .io2main()
 
     override fun updateProfile(user: User, nickname: String): Completable =
-        api.updateProfile(user.id, accessToken, Profile(nickname, user.fixedProfile))
+        api.updateProfile(user.id, Profile(nickname, user.fixedProfile))
             .io2main()
 
     override fun logout() {

+ 3 - 5
app/src/main/java/com/sirekanyan/knigopis/feature/user/UserInteractor.kt

@@ -5,7 +5,6 @@ import com.sirekanyan.knigopis.common.extensions.io2main
 import com.sirekanyan.knigopis.model.BookModel
 import com.sirekanyan.knigopis.model.createBookHeaderModel
 import com.sirekanyan.knigopis.model.toBookModel
-import com.sirekanyan.knigopis.repository.AuthRepository
 import com.sirekanyan.knigopis.repository.Endpoint
 import io.reactivex.Completable
 import io.reactivex.Single
@@ -23,23 +22,22 @@ interface UserInteractor {
 }
 
 class UserInteractorImpl(
-    private val auth: AuthRepository,
     private val api: Endpoint,
     private val resources: ResourceProvider
 ) : UserInteractor {
 
     override fun addFriend(userId: String) =
-        api.createSubscription(userId, auth.getAccessToken())
+        api.createSubscription(userId)
             .toCompletable()
             .io2main()
 
     override fun removeFriend(userId: String) =
-        api.deleteSubscription(userId, auth.getAccessToken())
+        api.deleteSubscription(userId)
             .toCompletable()
             .io2main()
 
     override fun isFriend(userId: String) =
-        api.getSubscriptions(auth.getAccessToken())
+        api.getSubscriptions()
             .map { subscriptions -> subscriptions.any { it.subUser.id == userId } }
             .io2main()
 

+ 12 - 13
app/src/main/java/com/sirekanyan/knigopis/repository/BookRepository.kt

@@ -33,7 +33,6 @@ interface BookRepository {
 class BookRepositoryImpl(
     private val api: Endpoint,
     private val cache: CommonCache,
-    private val auth: AuthRepository,
     private val plannedBookOrganizer: BookOrganizer<PlannedBook>,
     private val finishedBookOrganizer: BookOrganizer<FinishedBook>,
     networkChecker: NetworkChecker
@@ -44,35 +43,35 @@ class BookRepositoryImpl(
 
     override fun saveBook(bookId: String?, book: FinishedBookToSend, wasFinished: Boolean): Completable =
         when {
-            bookId == null -> api.createFinishedBook(auth.getAccessToken(), book)
-            wasFinished -> api.updateFinishedBook(bookId, auth.getAccessToken(), book)
+            bookId == null -> api.createFinishedBook(book)
+            wasFinished -> api.updateFinishedBook(bookId, book)
             else -> {
-                api.createFinishedBook(auth.getAccessToken(), book)
-                    .andThen(api.deletePlannedBook(bookId, auth.getAccessToken()))
+                api.createFinishedBook(book)
+                    .andThen(api.deletePlannedBook(bookId))
             }
         }
 
     override fun saveBook(bookId: String?, book: PlannedBookToSend, wasPlanned: Boolean): Completable =
         when {
-            bookId == null -> api.createPlannedBook(auth.getAccessToken(), book)
-            wasPlanned -> api.updatePlannedBook(bookId, auth.getAccessToken(), book)
+            bookId == null -> api.createPlannedBook(book)
+            wasPlanned -> api.updatePlannedBook(bookId, book)
             else -> {
-                api.createPlannedBook(auth.getAccessToken(), book)
-                    .andThen(api.deleteFinishedBook(bookId, auth.getAccessToken()))
+                api.createPlannedBook(book)
+                    .andThen(api.deleteFinishedBook(bookId))
             }
         }
 
     override fun deleteBook(book: BookDataModel): Completable =
         if (book.isFinished) {
-            api.deleteFinishedBook(book.id, auth.getAccessToken())
+            api.deleteFinishedBook(book.id)
         } else {
-            api.deletePlannedBook(book.id, auth.getAccessToken())
+            api.deletePlannedBook(book.id)
         }
 
     override fun loadFromNetwork(): Single<List<BookModel>> =
         Singles.zip(
-            api.getPlannedBooks(auth.getAccessToken()),
-            api.getFinishedBooks(auth.getAccessToken())
+            api.getPlannedBooks(),
+            api.getFinishedBooks()
         )
             .map { (planned, finished) ->
                 plannedBookOrganizer.organize(planned)

+ 14 - 43
app/src/main/java/com/sirekanyan/knigopis/repository/Endpoint.kt

@@ -11,57 +11,37 @@ interface Endpoint {
     fun getCredentials(@Query("token") token: String): Single<Credentials>
 
     @GET("books")
-    fun getFinishedBooks(@Query("access-token") accessToken: String): Single<List<FinishedBook>>
+    fun getFinishedBooks(): Single<List<FinishedBook>>
 
     @PUT("books/{id}")
-    fun updateFinishedBook(
-        @Path("id") id: String,
-        @Query("access-token") accessToken: String,
-        @Body book: FinishedBookToSend
-    ): Completable
+    fun updateFinishedBook(@Path("id") id: String, @Body book: FinishedBookToSend): Completable
 
     @POST("books")
-    fun createFinishedBook(
-        @Query("access-token") accessToken: String,
-        @Body book: FinishedBookToSend
-    ): Completable
+    fun createFinishedBook(@Body book: FinishedBookToSend): Completable
 
     @DELETE("books/{id}")
-    fun deleteFinishedBook(
-        @Path("id") id: String,
-        @Query("access-token") accessToken: String
-    ): Completable
+    fun deleteFinishedBook(@Path("id") id: String): Completable
 
     @GET("wishes")
-    fun getPlannedBooks(@Query("access-token") accessToken: String): Single<List<PlannedBook>>
+    fun getPlannedBooks(): Single<List<PlannedBook>>
 
     @PUT("wishes/{id}")
-    fun updatePlannedBook(
-        @Path("id") id: String,
-        @Query("access-token") accessToken: String,
-        @Body book: PlannedBookToSend
-    ): Completable
+    fun updatePlannedBook(@Path("id") id: String, @Body book: PlannedBookToSend): Completable
 
     @POST("wishes")
-    fun createPlannedBook(
-        @Query("access-token") accessToken: String,
-        @Body book: PlannedBookToSend
-    ): Completable
+    fun createPlannedBook(@Body book: PlannedBookToSend): Completable
 
     @DELETE("wishes/{id}")
-    fun deletePlannedBook(
-        @Path("id") id: String,
-        @Query("access-token") accessToken: String
-    ): Completable
+    fun deletePlannedBook(@Path("id") id: String): Completable
 
     @GET("books/latest-notes")
     fun getLatestBooksWithNotes(): Single<Map<String, Note>>
 
     @GET("subscriptions")
-    fun getSubscriptions(@Query("access-token") accessToken: String): Single<List<Subscription>>
+    fun getSubscriptions(): Single<List<Subscription>>
 
     @GET("users/current")
-    fun getProfile(@Query("access-token") accessToken: String): Single<User>
+    fun getProfile(): Single<User>
 
     @GET("users/{id}/books")
     fun getUserBooks(@Path("id") userId: String): Single<List<FinishedBook>>
@@ -70,21 +50,12 @@ interface Endpoint {
     fun getUser(@Path("id") userId: String): Single<User>
 
     @PUT("users/{id}")
-    fun updateProfile(
-        @Path("id") userId: String,
-        @Query("access-token") accessToken: String,
-        @Body profile: Profile
-    ): Completable
+    fun updateProfile(@Path("id") userId: String, @Body profile: Profile): Completable
 
     @POST("subscriptions/{subUserId}")
-    fun createSubscription(
-        @Path("subUserId") userId: String,
-        @Query("access-token") accessToken: String
-    ): Single<Any>
+    fun createSubscription(@Path("subUserId") userId: String): Single<Any>
 
     @DELETE("subscriptions/{subUserId}")
-    fun deleteSubscription(
-        @Path("subUserId") userId: String,
-        @Query("access-token") accessToken: String
-    ): Single<Any>
+    fun deleteSubscription(@Path("subUserId") userId: String): Single<Any>
+
 }

+ 1 - 2
app/src/main/java/com/sirekanyan/knigopis/repository/UserRepository.kt

@@ -21,7 +21,6 @@ interface UserRepository {
 class UserRepositoryImpl(
     private val api: Endpoint,
     private val cache: CommonCache,
-    private val auth: AuthRepository,
     networkChecker: NetworkChecker
 ) : CommonRepository<List<UserModel>>(networkChecker),
     UserRepository {
@@ -29,7 +28,7 @@ class UserRepositoryImpl(
     override fun observeUsers() = observe()
 
     override fun loadFromNetwork(): Single<List<UserModel>> =
-        api.getSubscriptions(auth.getAccessToken()).map { it.map(Subscription::toUserModel) }
+        api.getSubscriptions().map { it.map(Subscription::toUserModel) }
 
     override fun findCached(): Maybe<List<UserModel>> =
         cache.find(CacheKey.USERS, genericType<List<UserModel>>())