From 32836d05d8ae902ff8d90db3ade8166b76d61627 Mon Sep 17 00:00:00 2001 From: Koitharu Date: Fri, 13 May 2022 10:22:40 +0300 Subject: [PATCH] Update sync headers --- ...countAuthenticator.kt => SyncAuthenticator.kt} | 2 +- .../{AccountInterceptor.kt => SyncInterceptor.kt} | 15 +++++++-------- .../koitharu/kotatsu/sync/domain/SyncHelper.kt | 8 ++++---- 3 files changed, 12 insertions(+), 13 deletions(-) rename app/src/main/java/org/koitharu/kotatsu/sync/data/{AccountAuthenticator.kt => SyncAuthenticator.kt} (97%) rename app/src/main/java/org/koitharu/kotatsu/sync/data/{AccountInterceptor.kt => SyncInterceptor.kt} (63%) diff --git a/app/src/main/java/org/koitharu/kotatsu/sync/data/AccountAuthenticator.kt b/app/src/main/java/org/koitharu/kotatsu/sync/data/SyncAuthenticator.kt similarity index 97% rename from app/src/main/java/org/koitharu/kotatsu/sync/data/AccountAuthenticator.kt rename to app/src/main/java/org/koitharu/kotatsu/sync/data/SyncAuthenticator.kt index 38a2c8696..409feba44 100644 --- a/app/src/main/java/org/koitharu/kotatsu/sync/data/AccountAuthenticator.kt +++ b/app/src/main/java/org/koitharu/kotatsu/sync/data/SyncAuthenticator.kt @@ -10,7 +10,7 @@ import okhttp3.Response import okhttp3.Route import org.koitharu.kotatsu.R -class AccountAuthenticator( +class SyncAuthenticator( context: Context, private val account: Account, private val authApi: SyncAuthApi, diff --git a/app/src/main/java/org/koitharu/kotatsu/sync/data/AccountInterceptor.kt b/app/src/main/java/org/koitharu/kotatsu/sync/data/SyncInterceptor.kt similarity index 63% rename from app/src/main/java/org/koitharu/kotatsu/sync/data/AccountInterceptor.kt rename to app/src/main/java/org/koitharu/kotatsu/sync/data/SyncInterceptor.kt index e195877fb..2d96b5dcb 100644 --- a/app/src/main/java/org/koitharu/kotatsu/sync/data/AccountInterceptor.kt +++ b/app/src/main/java/org/koitharu/kotatsu/sync/data/SyncInterceptor.kt @@ -5,9 +5,10 @@ import android.accounts.AccountManager import android.content.Context import okhttp3.Interceptor import okhttp3.Response +import org.koitharu.kotatsu.BuildConfig import org.koitharu.kotatsu.R -class AccountInterceptor( +class SyncInterceptor( context: Context, private val account: Account, ) : Interceptor { @@ -17,13 +18,11 @@ class AccountInterceptor( override fun intercept(chain: Interceptor.Chain): Response { val token = accountManager.peekAuthToken(account, tokenType) - val request = if (token != null) { - chain.request().newBuilder() - .header("Authorization", "Bearer $token") - .build() - } else { - chain.request() + val requestBuilder = chain.request().newBuilder() + if (token != null) { + requestBuilder.header("Authorization", "Bearer $token") } - return chain.proceed(request) + requestBuilder.header("X-App-Version", BuildConfig.VERSION_CODE.toString()) + return chain.proceed(requestBuilder.build()) } } \ No newline at end of file diff --git a/app/src/main/java/org/koitharu/kotatsu/sync/domain/SyncHelper.kt b/app/src/main/java/org/koitharu/kotatsu/sync/domain/SyncHelper.kt index 115f41621..35b3c7408 100644 --- a/app/src/main/java/org/koitharu/kotatsu/sync/domain/SyncHelper.kt +++ b/app/src/main/java/org/koitharu/kotatsu/sync/domain/SyncHelper.kt @@ -13,8 +13,8 @@ import org.koitharu.kotatsu.R import org.koitharu.kotatsu.core.db.* import org.koitharu.kotatsu.parsers.util.json.mapJSONTo import org.koitharu.kotatsu.parsers.util.parseJson -import org.koitharu.kotatsu.sync.data.AccountAuthenticator -import org.koitharu.kotatsu.sync.data.AccountInterceptor +import org.koitharu.kotatsu.sync.data.SyncAuthenticator +import org.koitharu.kotatsu.sync.data.SyncInterceptor import org.koitharu.kotatsu.sync.data.SyncAuthApi import org.koitharu.kotatsu.utils.GZipInterceptor import org.koitharu.kotatsu.utils.ext.toContentValues @@ -37,8 +37,8 @@ class SyncHelper( ) { private val httpClient = OkHttpClient.Builder() - .authenticator(AccountAuthenticator(context, account, SyncAuthApi(context, OkHttpClient()))) - .addInterceptor(AccountInterceptor(context, account)) + .authenticator(SyncAuthenticator(context, account, SyncAuthApi(context, OkHttpClient()))) + .addInterceptor(SyncInterceptor(context, account)) .addInterceptor(GZipInterceptor()) .build() private val baseUrl = context.getString(R.string.url_sync_server)