package com.hypebeast.sdk.clients; import com.google.gson.Gson; import com.hypebeast.sdk.api.exception.ErrorHandlerResponseCode; import retrofit.ErrorHandler; import retrofit.RequestInterceptor; import retrofit.RestAdapter; /** * Created by hesk on 2/7/15. */ public abstract class Client { protected Gson gsonsetup; protected final ErrorHandler handlerError = new ErrorHandlerResponseCode(); /** * Rest adapter */ protected RestAdapter mAdapter; protected abstract void registerAdapter(); protected abstract String get_USER_AGENT(); protected abstract void jsonCreate(); protected void createInterfaces() { } protected RequestInterceptor getIn() { return new RequestInterceptor() { @Override public void intercept(RequestFacade request) { request.addHeader("User-Agent", get_USER_AGENT()); request.addHeader("Accept", "application/json"); request.addHeader("X-Api-Version", "2.0"); } }; } public Client() { jsonCreate(); registerAdapter(); createInterfaces(); } }