package com.kickstarter.services.interceptors; import android.support.annotation.NonNull; import com.kickstarter.libs.Build; import com.kickstarter.libs.utils.I18nUtils; import java.io.IOException; import okhttp3.Interceptor; import okhttp3.Request; import okhttp3.Response; /** * Interceptor to apply to all outgoing requests. */ public final class KSRequestInterceptor implements Interceptor { private final Build build; public KSRequestInterceptor(final @NonNull Build build) { this.build = build; } @Override public Response intercept(final @NonNull Chain chain) throws IOException { return chain.proceed(request(chain.request())); } private Request request(final @NonNull Request initialRequest) { return initialRequest.newBuilder() .header("Kickstarter-Android-App", build.versionCode().toString()) .header("Kickstarter-App-Id", build.applicationId()) .header("Accept-Language", I18nUtils.language()) .build(); } }