Class ApacheHttpClient4Executor
java.lang.Object
org.jboss.resteasy.client.core.executors.ApacheHttpClient4Executor
- All Implemented Interfaces:
ClientExecutor
- Version:
- $Revision: 1 $
- Author:
- Bill Burke
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionApacheHttpClient4Executor(org.apache.http.client.HttpClient httpClient) ApacheHttpClient4Executor(org.apache.http.client.HttpClient httpClient, org.apache.http.protocol.HttpContext httpContext) -
Method Summary
Modifier and TypeMethodDescriptionprotected org.apache.http.HttpEntitybuildEntity(ClientRequest request) Build the HttpEntity to be sent to the Service as part of (POST) request.protected voidcleanUpAfterExecute(org.apache.http.client.methods.HttpRequestBase httpMethod) If passed httpMethod is of type HttpPost then obtain its entity.voidclose()voidcommitHeaders(ClientRequest request, org.apache.http.client.methods.HttpRequestBase httpMethod) protected InputStreamcreateRequest(String uriTemplate) createRequest(javax.ws.rs.core.UriBuilder uriBuilder) execute(ClientRequest request) static CaseInsensitiveMap<String> extractHeaders(org.apache.http.HttpResponse response) voidfinalize()org.apache.http.client.HttpClientorg.apache.http.protocol.HttpContextintResponse stream is wrapped in a BufferedInputStream.protected StringUse context information, which will include node name, to avoid conflicts in case of multiple VMS using same temp directory location.booleanisClosed()voidloadHttpMethod(ClientRequest request, org.apache.http.client.methods.HttpRequestBase httpMethod) voidsetFileUploadInMemoryThresholdLimit(int pInMemoryThresholdLimit) Setter forfileUploadInMemoryThresholdLimitvoidsetFileUploadMemoryUnit(String pMemoryUnit) Setter forfileUploadMemoryUnitvoidsetFileUploadTempFileDir(File pTempFileDir) Setter forfileUploadTempFileDirvoidsetHttpContext(org.apache.http.protocol.HttpContext httpContext) voidsetResponseBufferSize(int responseBufferSize) Response stream is wrapped in a BufferedInputStream.
-
Field Details
-
BYTE_MEMORY_UNIT
- See Also:
-
KILOBYTE_MEMORY_UNIT
- See Also:
-
MEGABYTE_MEMORY_UNIT
- See Also:
-
GIGABYTE_MEMORY_UNIT
- See Also:
-
httpClient
protected org.apache.http.client.HttpClient httpClient -
createdHttpClient
protected boolean createdHttpClient -
httpContext
protected org.apache.http.protocol.HttpContext httpContext -
closed
protected boolean closed -
responseBufferSize
protected int responseBufferSize
-
-
Constructor Details
-
ApacheHttpClient4Executor
public ApacheHttpClient4Executor() -
ApacheHttpClient4Executor
public ApacheHttpClient4Executor(org.apache.http.client.HttpClient httpClient) -
ApacheHttpClient4Executor
public ApacheHttpClient4Executor(org.apache.http.client.HttpClient httpClient, org.apache.http.protocol.HttpContext httpContext)
-
-
Method Details
-
getResponseBufferSize
public int getResponseBufferSize()Response stream is wrapped in a BufferedInputStream. Default is 8192. Value of 0 will not wrap it. Value of -1 will use a SelfExpandingBufferedInputStream- Returns:
-
setResponseBufferSize
public void setResponseBufferSize(int responseBufferSize) Response stream is wrapped in a BufferedInputStream. Default is 8192. Value of 0 will not wrap it. Value of -1 will use a SelfExpandingBufferedInputStream- Parameters:
responseBufferSize-
-
getHttpClient
public org.apache.http.client.HttpClient getHttpClient() -
getHttpContext
public org.apache.http.protocol.HttpContext getHttpContext() -
setHttpContext
public void setHttpContext(org.apache.http.protocol.HttpContext httpContext) -
extractHeaders
-
createRequest
- Specified by:
createRequestin interfaceClientExecutor
-
createRequest
- Specified by:
createRequestin interfaceClientExecutor
-
createBufferedStream
-
execute
- Specified by:
executein interfaceClientExecutor- Throws:
Exception
-
cleanUpAfterExecute
protected void cleanUpAfterExecute(org.apache.http.client.methods.HttpRequestBase httpMethod) If passed httpMethod is of type HttpPost then obtain its entity. If the entity has an enclosing File then delete it by invoking this method after the request has completed. The entity will have an enclosing File only if it was too huge to fit into memory.- Parameters:
httpMethod- - the httpMethod to clean up.- See Also:
-
loadHttpMethod
public void loadHttpMethod(ClientRequest request, org.apache.http.client.methods.HttpRequestBase httpMethod) throws Exception - Throws:
Exception
-
buildEntity
Build the HttpEntity to be sent to the Service as part of (POST) request. Creates a off-memoryApacheHttpClient4Executor.FileExposingFileEntityor a regular in-memoryByteArrayEntitydepending on if the request OutputStream fit into memory when built by callingwriteRequestBodyToOutputStream(ClientRequest).- Parameters:
request- -- Returns:
- - the built HttpEntity
- Throws:
IOException- -
-
getTempfilePrefix
Use context information, which will include node name, to avoid conflicts in case of multiple VMS using same temp directory location.- Returns:
- -
-
setFileUploadInMemoryThresholdLimit
public void setFileUploadInMemoryThresholdLimit(int pInMemoryThresholdLimit) Setter forfileUploadInMemoryThresholdLimit- Parameters:
pInMemoryThresholdLimit- - the inMemoryThresholdLimitMB to set
-
setFileUploadTempFileDir
Setter forfileUploadTempFileDir- Parameters:
pTempFileDir- the tempFileDir to set
-
setFileUploadMemoryUnit
Setter forfileUploadMemoryUnit- Parameters:
pMemoryUnit- the memoryUnit to set
-
commitHeaders
public void commitHeaders(ClientRequest request, org.apache.http.client.methods.HttpRequestBase httpMethod) -
close
public void close()- Specified by:
closein interfaceClientExecutor
-
isClosed
public boolean isClosed() -
finalize
-