package com.ligati.apipixie.http; import org.apache.commons.codec.binary.Base64; import org.apache.http.Header; import org.apache.http.message.BasicHeader; import org.json.JSONArray; import org.json.JSONObject; public class BasicAuthHttpManager implements APIHttpManager { private final Header auth; public BasicAuthHttpManager(String username, String password) { byte[] credentials = (username + ":" + password).getBytes(); String encoded = new String(Base64.encodeBase64(credentials)); this.auth = new BasicHeader("Authorization", "Basic " + encoded); } private Header getAuthHeader() { return auth; } @Override public JSONArray getArray(String url) { return APIHttpUtil.performGet(JSONArray.class, url, getAuthHeader()); } @Override public JSONObject getObject(String url) { return APIHttpUtil.performGet(JSONObject.class, url, getAuthHeader()); } @Override public JSONObject putObject(String url, JSONObject json) { return APIHttpUtil.performPut(JSONObject.class, url, json, getAuthHeader()); } @Override public JSONObject postObject(String url, JSONObject json) { return APIHttpUtil.performPost(JSONObject.class, url, json, getAuthHeader()); } @Override public void deleteObject(String url) { APIHttpUtil.performDelete(url, getAuthHeader()); } }