package com.sharethis.loopy.sdk; import com.sharethis.loopy.sdk.net.HttpClientFactory; import org.json.JSONException; import org.json.JSONObject; import java.util.Map; /** * @author Jason Polites */ public class LoopyAccess { public static Loopy getLoopy() { return Loopy.getInstance(); } public static ApiClient getApiClient() { return Loopy.getInstance().getApiClient(); } public static void setApiClient(ApiClient client) { Loopy.getInstance().setApiClient(client); } public static void setHttpClientFactory(HttpClientFactory factory) { Loopy.getInstance().getApiClient().setHttpClientFactory(factory); } public static void setLoopy(Loopy loopyPrivate) { Loopy.setInstance(loopyPrivate); } public static ApiCallback wrapDelay(final ApiCallback callback, final int delay) { return new ApiCallback() { @Override public void onSuccess(JSONObject result) { callback.onSuccess(result); } @Override public void onError(Throwable e) { callback.onError(e); } @Override public void onProcess(JSONObject result) { callback.onProcess(result); } @Override public void onBeforePost(Map<String, String> headers, JSONObject payload) { if(delay > 0) { try { JSONObject mock = new JSONObject(); mock.put("hang", delay); payload.put("mock", mock); } catch (JSONException e) { e.printStackTrace(); } } callback.onBeforePost(headers, payload); } }; } }