package org.chenyang.http.client;

import org.chenyang.http.HttpHost;
import org.chenyang.http.HttpRequest;
import org.chenyang.http.HttpResponse;
import org.chenyang.http.client.methods.HttpUriRequest;
import org.chenyang.http.conn.ClientConnectionManager;
import org.chenyang.http.params.HttpParams;
import org.chenyang.http.protocol.HttpContext;
import java.io.IOException;

public interface HttpClient {
   /** @deprecated */
   @Deprecated
   HttpParams getParams();

   /** @deprecated */
   @Deprecated
   ClientConnectionManager getConnectionManager();

   HttpResponse execute(HttpUriRequest var1) throws IOException, ClientProtocolException;

   HttpResponse execute(HttpUriRequest var1, HttpContext var2) throws IOException, ClientProtocolException;

   HttpResponse execute(HttpHost var1, HttpRequest var2) throws IOException, ClientProtocolException;

   HttpResponse execute(HttpHost var1, HttpRequest var2, HttpContext var3) throws IOException, ClientProtocolException;

   <T> T execute(HttpUriRequest var1, ResponseHandler<? extends T> var2) throws IOException, ClientProtocolException;

   <T> T execute(HttpUriRequest var1, ResponseHandler<? extends T> var2, HttpContext var3) throws IOException, ClientProtocolException;

   <T> T execute(HttpHost var1, HttpRequest var2, ResponseHandler<? extends T> var3) throws IOException, ClientProtocolException;

   <T> T execute(HttpHost var1, HttpRequest var2, ResponseHandler<? extends T> var3, HttpContext var4) throws IOException, ClientProtocolException;
}
