/** * Copyright 2009 Joe LaPenna */ package com.joelapenna.foursquare.http; import com.joelapenna.foursquare.error.FoursquareCredentialsException; import com.joelapenna.foursquare.error.FoursquareException; import com.joelapenna.foursquare.error.FoursquareParseException; import com.joelapenna.foursquare.parsers.Parser; import com.joelapenna.foursquare.types.FoursquareType; import org.apache.http.NameValuePair; import org.apache.http.client.methods.HttpGet; import org.apache.http.client.methods.HttpPost; import org.apache.http.client.methods.HttpRequestBase; import java.io.IOException; import java.net.HttpURLConnection; import java.net.URL; /** * @author Joe LaPenna (joe@joelapenna.com) */ public interface HttpApi { abstract public FoursquareType doHttpRequest(HttpRequestBase httpRequest, Parser<? extends FoursquareType> parser) throws FoursquareCredentialsException, FoursquareParseException, FoursquareException, IOException; abstract public String doHttpPost(String url, NameValuePair... nameValuePairs) throws FoursquareCredentialsException, FoursquareParseException, FoursquareException, IOException; abstract public HttpGet createHttpGet(String url, NameValuePair... nameValuePairs); abstract public HttpPost createHttpPost(String url, NameValuePair... nameValuePairs); abstract public HttpURLConnection createHttpURLConnectionPost(URL url, String boundary) throws IOException; }