package com.ipragmatech.oauthmagentorestapi.retrofit;
import com.google.api.client.auth.oauth.OAuthParameters;
import com.google.api.client.http.GenericUrl;
import com.squareup.okhttp.Interceptor;
import com.squareup.okhttp.Request;
import com.squareup.okhttp.Response;
import java.io.IOException;
import java.security.GeneralSecurityException;
/**
* Created by kapiljain on 12/07/15.
*/
public class OAuthInterceptor implements Interceptor {
private final OAuthParameters oAuthParams;
public OAuthInterceptor(OAuthParameters oAuthParams) {
this.oAuthParams = oAuthParams;
}
@Override
public Response intercept(Chain chain) throws IOException {
Request originalRequest = chain.request();
GenericUrl requestUrl = new GenericUrl(originalRequest.urlString());
oAuthParams.computeNonce();
oAuthParams.computeTimestamp();
try {
oAuthParams.computeSignature("GET", requestUrl);
Request compressedRequest = originalRequest.newBuilder()
.header("Authorization", oAuthParams.getAuthorizationHeader())
.header("Accept","application/xml")
.method(originalRequest.method(),originalRequest.body())
.build();
return chain.proceed(compressedRequest);
} catch (GeneralSecurityException e) {
}
return chain.proceed(originalRequest);
}
}