android-mvp-architecture
android-mvp-architecture copied to clipboard
How access shared pref to save new token inside ApiInterceptor
@Override
public Response intercept(Interceptor.Chain chain) throws IOException {
final Request request = chain.request();
final Request.Builder builder = request.newBuilder();
String apiAuthType = request.header(ApiHeader.API_AUTH_TYPE);
if (apiAuthType == null) {
apiAuthType = ApiHeader.PROTECTED_API;
}
switch (apiAuthType) {
case ApiHeader.PROTECTED_API:
builder.addHeader(ApiHeader.HEADER_PARAM_API_KEY, mApiHeader.getmApiKey());
builder.addHeader(ApiHeader.HEADER_PARAM_AUTHRIZATION, mApiHeader.getmTokenType() + " " + mApiHeader.getmAccessToken());
builder.addHeader(ApiHeader.HEADER_PARAM_REFRESH_TOKEN, mApiHeader.getmRefreshToken());
case ApiHeader.PUBLIC_API:
default:
builder.addHeader(ApiHeader.HEADER_PARAM_API_KEY, mApiHeader.getmApiKey());
}
Response response = chain.proceed(builder.build());
String newAccessToken = response.header("access_token");
String newRefreshToken = response.header("refresh_token");
String newTokenType = response.header("token_type");
if (newAccessToken != null) {
**// I want to save data here**
}
return response;
}