Class HttpRequester
- java.lang.Object
-
- org.apache.hc.core5.http.impl.bootstrap.HttpRequester
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable,ModalCloseable,ConnPoolControl<HttpHost>,ConnPoolStats<HttpHost>
public class HttpRequester extends java.lang.Object implements ConnPoolControl<HttpHost>, ModalCloseable
HTTP/1.1 client side message exchange initiator.- Since:
- 5.0
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private classHttpRequester.PoolEntryHolder
-
Field Summary
Fields Modifier and Type Field Description private Resolver<HttpHost,java.net.InetSocketAddress>addressResolverprivate HttpConnectionFactory<? extends HttpClientConnection>connectFactoryprivate ManagedConnPool<HttpHost,HttpClientConnection>connPoolprivate HttpProcessorhttpProcessorprivate HttpRequestExecutorrequestExecutorprivate SocketConfigsocketConfigprivate SSLSessionVerifiersslSessionVerifierprivate Callback<javax.net.ssl.SSLParameters>sslSetupHandlerprivate javax.net.ssl.SSLSocketFactorysslSocketFactory
-
Constructor Summary
Constructors Constructor Description HttpRequester(HttpRequestExecutor requestExecutor, HttpProcessor httpProcessor, ManagedConnPool<HttpHost,HttpClientConnection> connPool, SocketConfig socketConfig, HttpConnectionFactory<? extends HttpClientConnection> connectFactory, javax.net.ssl.SSLSocketFactory sslSocketFactory, Callback<javax.net.ssl.SSLParameters> sslSetupHandler, SSLSessionVerifier sslSessionVerifier, Resolver<HttpHost,java.net.InetSocketAddress> addressResolver)UseRequesterBootstrapto create instances of this class.
-
Method Summary
-
-
-
Field Detail
-
requestExecutor
private final HttpRequestExecutor requestExecutor
-
httpProcessor
private final HttpProcessor httpProcessor
-
connPool
private final ManagedConnPool<HttpHost,HttpClientConnection> connPool
-
socketConfig
private final SocketConfig socketConfig
-
connectFactory
private final HttpConnectionFactory<? extends HttpClientConnection> connectFactory
-
sslSocketFactory
private final javax.net.ssl.SSLSocketFactory sslSocketFactory
-
sslSetupHandler
private final Callback<javax.net.ssl.SSLParameters> sslSetupHandler
-
sslSessionVerifier
private final SSLSessionVerifier sslSessionVerifier
-
-
Constructor Detail
-
HttpRequester
@Internal public HttpRequester(HttpRequestExecutor requestExecutor, HttpProcessor httpProcessor, ManagedConnPool<HttpHost,HttpClientConnection> connPool, SocketConfig socketConfig, HttpConnectionFactory<? extends HttpClientConnection> connectFactory, javax.net.ssl.SSLSocketFactory sslSocketFactory, Callback<javax.net.ssl.SSLParameters> sslSetupHandler, SSLSessionVerifier sslSessionVerifier, Resolver<HttpHost,java.net.InetSocketAddress> addressResolver)
UseRequesterBootstrapto create instances of this class.
-
-
Method Detail
-
getTotalStats
public PoolStats getTotalStats()
- Specified by:
getTotalStatsin interfaceConnPoolStats<HttpHost>
-
getStats
public PoolStats getStats(HttpHost route)
- Specified by:
getStatsin interfaceConnPoolStats<HttpHost>
-
setMaxTotal
public void setMaxTotal(int max)
- Specified by:
setMaxTotalin interfaceConnPoolControl<HttpHost>
-
getMaxTotal
public int getMaxTotal()
- Specified by:
getMaxTotalin interfaceConnPoolControl<HttpHost>
-
setDefaultMaxPerRoute
public void setDefaultMaxPerRoute(int max)
- Specified by:
setDefaultMaxPerRoutein interfaceConnPoolControl<HttpHost>
-
getDefaultMaxPerRoute
public int getDefaultMaxPerRoute()
- Specified by:
getDefaultMaxPerRoutein interfaceConnPoolControl<HttpHost>
-
setMaxPerRoute
public void setMaxPerRoute(HttpHost route, int max)
- Specified by:
setMaxPerRoutein interfaceConnPoolControl<HttpHost>
-
getMaxPerRoute
public int getMaxPerRoute(HttpHost route)
- Specified by:
getMaxPerRoutein interfaceConnPoolControl<HttpHost>
-
closeIdle
public void closeIdle(TimeValue idleTime)
- Specified by:
closeIdlein interfaceConnPoolControl<HttpHost>
-
closeExpired
public void closeExpired()
- Specified by:
closeExpiredin interfaceConnPoolControl<HttpHost>
-
getRoutes
public java.util.Set<HttpHost> getRoutes()
- Specified by:
getRoutesin interfaceConnPoolControl<HttpHost>
-
execute
public ClassicHttpResponse execute(HttpClientConnection connection, ClassicHttpRequest request, HttpResponseInformationCallback informationCallback, HttpContext context) throws HttpException, java.io.IOException
- Throws:
HttpExceptionjava.io.IOException
-
execute
public ClassicHttpResponse execute(HttpClientConnection connection, ClassicHttpRequest request, HttpContext context) throws HttpException, java.io.IOException
- Throws:
HttpExceptionjava.io.IOException
-
keepAlive
public boolean keepAlive(HttpClientConnection connection, ClassicHttpRequest request, ClassicHttpResponse response, HttpContext context) throws java.io.IOException
- Throws:
java.io.IOException
-
execute
public <T> T execute(HttpClientConnection connection, ClassicHttpRequest request, HttpContext context, HttpClientResponseHandler<T> responseHandler) throws HttpException, java.io.IOException
- Throws:
HttpExceptionjava.io.IOException
-
createSocket
private java.net.Socket createSocket(HttpHost targetHost) throws java.io.IOException
- Throws:
java.io.IOException
-
execute
public ClassicHttpResponse execute(HttpHost targetHost, ClassicHttpRequest request, HttpResponseInformationCallback informationCallback, Timeout connectTimeout, HttpContext context) throws HttpException, java.io.IOException
- Throws:
HttpExceptionjava.io.IOException
-
execute
public ClassicHttpResponse execute(HttpHost targetHost, ClassicHttpRequest request, Timeout connectTimeout, HttpContext context) throws HttpException, java.io.IOException
- Throws:
HttpExceptionjava.io.IOException
-
execute
public <T> T execute(HttpHost targetHost, ClassicHttpRequest request, Timeout connectTimeout, HttpContext context, HttpClientResponseHandler<T> responseHandler) throws HttpException, java.io.IOException
- Throws:
HttpExceptionjava.io.IOException
-
getConnPoolControl
public ConnPoolControl<HttpHost> getConnPoolControl()
-
close
public void close(CloseMode closeMode)
Description copied from interface:ModalCloseableCloses this process or endpoint and releases any system resources associated with it. If the endpoint or the process is already closed then invoking this method has no effect.- Specified by:
closein interfaceModalCloseable- Parameters:
closeMode- How to close the receiver.
-
close
public void close() throws java.io.IOException- Specified by:
closein interfacejava.lang.AutoCloseable- Specified by:
closein interfacejava.io.Closeable- Throws:
java.io.IOException
-
-