|
Apache JMeter | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.jmeter.protocol.http.sampler.HTTPAbstractImpl org.apache.jmeter.protocol.http.sampler.HTTPHCAbstractImpl org.apache.jmeter.protocol.http.sampler.HTTPHC4Impl
public class HTTPHC4Impl
HTTP Sampler using Apache HttpClient 4.x.
Nested Class Summary | |
---|---|
static class |
HTTPHC4Impl.HttpDelete
|
Field Summary |
---|
Fields inherited from class org.apache.jmeter.protocol.http.sampler.HTTPHCAbstractImpl |
---|
CPS_HTTP, CPS_HTTPS, HTTP_VERSION, localAddress, localHost, NONPROXY_HOSTS, nonProxyHostFull, nonProxyHostSuffix, nonProxyHostSuffixSize, PROXY_DEFINED, PROXY_DOMAIN, PROXY_HOST, PROXY_PASS, PROXY_PORT, PROXY_USER, SO_TIMEOUT, USE_CACHED_SSL_CONTEXT, USE_LOOPBACK |
Fields inherited from class org.apache.jmeter.protocol.http.sampler.HTTPAbstractImpl |
---|
testElement |
Fields inherited from interface org.apache.jmeter.protocol.http.util.HTTPConstantsInterface |
---|
APPLICATION_X_WWW_FORM_URLENCODED, CACHE_CONTROL, CONNECT, CONNECTION_CLOSE, DATE, DEFAULT_HTTP_PORT, DEFAULT_HTTP_PORT_STRING, DEFAULT_HTTPS_PORT, DEFAULT_HTTPS_PORT_STRING, DELETE, ENCODING_GZIP, ETAG, EXPIRES, GET, HEAD, HEADER_AUTHORIZATION, HEADER_CONNECTION, HEADER_CONTENT_DISPOSITION, HEADER_CONTENT_ENCODING, HEADER_CONTENT_LENGTH, HEADER_CONTENT_TYPE, HEADER_COOKIE, HEADER_HOST, HEADER_LOCAL_ADDRESS, HEADER_LOCATION, HEADER_SET_COOKIE, HTTP_1_1, IF_MODIFIED_SINCE, IF_NONE_MATCH, KEEP_ALIVE, LAST_MODIFIED, MULTIPART_FORM_DATA, OPTIONS, PATCH, POST, PROTOCOL_HTTP, PROTOCOL_HTTPS, PUT, TRACE, TRANSFER_ENCODING |
Constructor Summary | |
---|---|
protected |
HTTPHC4Impl(HTTPSamplerBase testElement)
|
Method Summary | |
---|---|
protected HTTPSampleResult |
createSampleResult(URL url,
String method)
Create HTTPSampleResult filling url, method and SampleLabel. |
protected String |
getCharsetWithDefault(org.apache.http.params.HttpParams putParams)
If contentEncoding is not set by user, then Platform encoding will be used to convert to String |
protected void |
handleMethod(String method,
HTTPSampleResult result,
org.apache.http.client.methods.HttpRequestBase httpRequest,
org.apache.http.protocol.HttpContext localContext)
Calls sendPostData if method is POST and sendEntityData if method is PUT or PATCH Field HTTPSampleResult#queryString of result is modified in the 2 cases |
boolean |
interrupt()
Interrupt the current operation if possible. |
protected void |
notifyFirstSampleAfterLoopRestart()
|
protected HTTPSampleResult |
sample(URL url,
String method,
boolean areFollowingRedirect,
int frameDepth)
|
protected String |
sendEntityData(org.apache.http.client.methods.HttpEntityEnclosingRequestBase entity)
Creates the entity data to be sent. |
protected String |
sendPostData(org.apache.http.client.methods.HttpPost post)
|
protected String |
setConnectionCookie(org.apache.http.HttpRequest request,
URL url,
CookieManager cookieManager)
Extracts all the required cookies for that particular URL request and sets them in the HttpMethod passed in. |
protected void |
setConnectionHeaders(org.apache.http.client.methods.HttpRequestBase request,
URL url,
HeaderManager headerManager,
CacheManager cacheManager)
Extracts all the required non-cookie headers for that particular URL request and sets them in the HttpMethod passed in |
protected void |
setDefaultRequestHeaders(org.apache.http.HttpRequest request)
Set any default request headers to include |
protected void |
setupRequest(URL url,
org.apache.http.client.methods.HttpRequestBase httpRequest,
HTTPSampleResult res)
Setup following elements on httpRequest: ConnRoutePNames.LOCAL_ADDRESS enabling IP-SPOOFING Socket and connection timeout Redirect handling Keep Alive header or Connection Close Calls setConnectionHeaders to setup headers Calls setConnectionCookie to setup Cookie |
protected void |
threadFinished()
|
Methods inherited from class org.apache.jmeter.protocol.http.sampler.HTTPHCAbstractImpl |
---|
isDynamicProxy, isNonProxy, isNullOrEmptyTrimmed, isPartialMatch, isStaticProxy |
Methods inherited from class org.apache.jmeter.protocol.http.sampler.HTTPAbstractImpl |
---|
errorResult, getArguments, getAuthManager, getAutoRedirects, getCacheManager, getConnectTimeout, getContentEncoding, getCookieManager, getDoBrowserCompatibleMultipart, getHeaderManager, getHTTPFiles, getIpSource, getIpSourceAddress, getProxyHost, getProxyPass, getProxyPortInt, getProxyUser, getResponseTimeout, getSendFileAsPostBody, getSendParameterValuesAsPostBody, getUseKeepAlive, getUseMultipartForPost, hasArguments, isMonitor, isSuccessCode, notifySSLContextWasReset, readResponse, readResponse, resultProcessing, setUseKeepAlive |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
protected HTTPHC4Impl(HTTPSamplerBase testElement)
Method Detail |
---|
protected HTTPSampleResult sample(URL url, String method, boolean areFollowingRedirect, int frameDepth)
sample
in class HTTPAbstractImpl
protected void handleMethod(String method, HTTPSampleResult result, org.apache.http.client.methods.HttpRequestBase httpRequest, org.apache.http.protocol.HttpContext localContext) throws IOException
method
- String HTTP methodresult
- HTTPSampleResult
httpRequest
- HttpRequestBase
localContext
- HttpContext
IOException
protected HTTPSampleResult createSampleResult(URL url, String method)
url
- URLmethod
- HTTP Method
HTTPSampleResult
protected void setupRequest(URL url, org.apache.http.client.methods.HttpRequestBase httpRequest, HTTPSampleResult res) throws IOException
url
- httpRequest
- res
-
IOException
protected void setDefaultRequestHeaders(org.apache.http.HttpRequest request)
request
- the HttpRequest to be usedprotected String setConnectionCookie(org.apache.http.HttpRequest request, URL url, CookieManager cookieManager)
HttpMethod
passed in.
request
- HttpRequest
for the requesturl
- URL
of the requestcookieManager
- the CookieManager
containing all the cookies
protected void setConnectionHeaders(org.apache.http.client.methods.HttpRequestBase request, URL url, HeaderManager headerManager, CacheManager cacheManager)
HttpMethod
passed in
request
- HttpRequest
which represents the requesturl
- URL
of the URL requestheaderManager
- the HeaderManager
containing all the cookies
for this UrlConfig
cacheManager
- the CacheManager (may be null)protected String sendPostData(org.apache.http.client.methods.HttpPost post) throws IOException
post
- HttpPost
IOException
protected String sendEntityData(org.apache.http.client.methods.HttpEntityEnclosingRequestBase entity) throws IOException
If there is a file entry with a non-empty MIME type we use that to set the request Content-Type header, otherwise we default to whatever header is present from a Header Manager.
If the content charset HTTPAbstractImpl.getContentEncoding()
is null or empty
we use the HC4 default provided by HTTP.DEF_CONTENT_CHARSET
which is
ISO-8859-1.
entity
- to be processed, e.g. PUT or PATCH
UnsupportedEncodingException
- for invalid charset name
IOException
- cannot really occur for ByteArrayOutputStream methodsprotected String getCharsetWithDefault(org.apache.http.params.HttpParams putParams)
putParams
- HttpParams
protected void notifyFirstSampleAfterLoopRestart()
notifyFirstSampleAfterLoopRestart
in class HTTPAbstractImpl
protected void threadFinished()
threadFinished
in class HTTPAbstractImpl
public boolean interrupt()
Interruptible
true
if there was an operation to interrupt.
|
Apache JMeter | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |