feature/fetch_userinfo #85

Merged
Fujimatsu merged 35 commits from feature/fetch_userinfo into main 2024-06-24 01:36:45 +00:00
2 changed files with 13 additions and 2 deletions
Showing only changes of commit a8bc250095 - Show all commits

View File

@ -13,6 +13,7 @@ import dagger.hilt.components.SingletonComponent;
import okhttp3.OkHttpClient;
import one.nem.kidshift.data.UserSettings;
import one.nem.kidshift.data.retrofit.interceptor.AuthorizationInterceptor;
import one.nem.kidshift.utils.KSLogger;
import retrofit2.Retrofit;
import retrofit2.converter.gson.GsonConverterFactory;
@ -23,10 +24,13 @@ public class KidShiftApiServiceModule {
@Inject
UserSettings userSettings;
@Inject
KSLogger logger;
@Provides
@Singleton
public AuthorizationInterceptor provideAuthorizationInterceptor() {
return new AuthorizationInterceptor(userSettings);
return new AuthorizationInterceptor(userSettings, logger);
}
// Gson

View File

@ -9,6 +9,7 @@ import javax.inject.Inject;
import okhttp3.Interceptor;
import okhttp3.Response;
import one.nem.kidshift.data.UserSettings;
import one.nem.kidshift.utils.KSLogger;
public class AuthorizationInterceptor implements Interceptor {
@ -17,10 +18,13 @@ public class AuthorizationInterceptor implements Interceptor {
public static final String HEADER_PLACEHOLDER = HEADER_NAME + ": " + HEADER_VALUE;
private final UserSettings userSettings;
private final KSLogger logger;
@Inject
public AuthorizationInterceptor(UserSettings userSettings) {
public AuthorizationInterceptor(UserSettings userSettings, KSLogger logger) {
this.userSettings = userSettings;
this.logger = logger;
logger.setTag("AuthorizationInterceptor")
}
@NonNull
@ -28,12 +32,15 @@ public class AuthorizationInterceptor implements Interceptor {
public Response intercept(@NonNull Chain chain) throws IOException {
try {
if (chain.request().header(HEADER_NAME) == null) {
logger.debug("No Authorization header found. Skipping.");
return chain.proceed(chain.request());
}
if (!HEADER_VALUE.equals(chain.request().header(HEADER_NAME))) {
logger.debug("Authorization header found, but value is not expected. Skipping.");
return chain.proceed(chain.request());
}
logger.debug("Authorization header found. Adding value.");
return chain.proceed(chain.request().newBuilder()
.header(HEADER_NAME, userSettings.getAppCommonSetting().getAccessToken())
.build());