Class HTTPSamplerProxy
java.lang.Object
org.apache.jmeter.testelement.AbstractTestElement
org.apache.jmeter.samplers.AbstractSampler
org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase
org.apache.jmeter.protocol.http.sampler.HTTPSamplerProxy
- All Implemented Interfaces:
Serializable
,Cloneable
,ConfigMergabilityIndicator
,Replaceable
,Searchable
,HTTPConstantsInterface
,Interruptible
,Sampler
,org.apache.jmeter.testelement.TestElement
,TestIterationListener
,TestStateListener
,ThreadListener
Proxy class that dispatches to the appropriate HTTP sampler.
This class is stored in the test plan, and holds all the configuration settings. The actual implementation is created at run-time, and is passed a reference to this class so it can get access to all the settings stored by HTTPSamplerProxy.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase
HTTPSamplerBase.SourceType
Nested classes/interfaces inherited from interface org.apache.jmeter.testelement.TestElement
org.apache.jmeter.testelement.TestElement.Companion
-
Field Summary
Fields inherited from class org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase
ARGUMENTS, AUTH_MANAGER, AUTO_REDIRECTS, BROWSER_COMPATIBLE_MULTIPART, BROWSER_COMPATIBLE_MULTIPART_MODE_DEFAULT, CACHE_MANAGER, CONCURRENT_DWN, CONCURRENT_POOL, CONCURRENT_POOL_SIZE, CONNECT_TIMEOUT, CONTENT_ENCODING, CONTENT_TYPE, COOKIE_MANAGER, DEFAULT_METHOD, DNS_CACHE_MANAGER, DO_MULTIPART_POST, DOMAIN, EMBEDDED_URL_EXCLUDE_RE, EMBEDDED_URL_RE, FOLLOW_REDIRECTS, HEADER_MANAGER, IMAGE_PARSER, IMPLEMENTATION, IP_SOURCE, IP_SOURCE_TYPE, KEYSTORE_CONFIG, MAX_FRAME_DEPTH, MAX_REDIRECTS, MD5, METHOD, MONITOR, NON_HTTP_RESPONSE_CODE, NON_HTTP_RESPONSE_MESSAGE, PATH, PORT, POST_BODY_RAW, POST_BODY_RAW_DEFAULT, PROTOCOL, PROXYHOST, PROXYPASS, PROXYPORT, PROXYSCHEME, PROXYUSER, RESPONSE_TIMEOUT, SAMPLE_TIMEOUT, SOURCE_TYPE_DEFAULT, UNSPECIFIED_PORT, UNSPECIFIED_PORT_AS_STRING, URL, URL_UNSPECIFIED_PORT, URL_UNSPECIFIED_PORT_AS_STRING, USE_KEEPALIVE
Fields inherited from interface org.apache.jmeter.protocol.http.util.HTTPConstantsInterface
APPLICATION_X_WWW_FORM_URLENCODED, CACHE_CONTROL, CONNECT, CONNECTION_CLOSE, COPY, DATE, DEFAULT_HTTP_PORT, DEFAULT_HTTP_PORT_STRING, DEFAULT_HTTPS_PORT, DEFAULT_HTTPS_PORT_STRING, DELETE, ENCODING_BROTLI, ENCODING_DEFLATE, 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_COOKIE_IN_REQUEST, HEADER_HOST, HEADER_LOCAL_ADDRESS, HEADER_LOCATION, HEADER_SET_COOKIE, HTTP_1_1, IF_MODIFIED_SINCE, IF_NONE_MATCH, KEEP_ALIVE, LAST_MODIFIED, LOCK, MKCALENDAR, MKCOL, MOVE, MULTIPART_FORM_DATA, OPTIONS, PATCH, POST, PROPFIND, PROPPATCH, PROTOCOL_HTTP, PROTOCOL_HTTPS, PUT, REPORT, SC_MOVED_PERMANENTLY, SC_MOVED_TEMPORARILY, SC_PERMANENT_REDIRECT, SC_SEE_OTHER, SC_TEMPORARY_REDIRECT, SEARCH, TRACE, TRANSFER_ENCODING, UNLOCK, VARY
Fields inherited from interface org.apache.jmeter.testelement.TestElement
COMMENTS, Companion, ENABLED, GUI_CLASS, NAME, TEST_CLASS
-
Constructor Summary
ConstructorDescriptionHTTPSamplerProxy
(String impl) Convenience method used to initialise the implementation. -
Method Summary
Modifier and TypeMethodDescriptionboolean
Interrupt the current operation if possible.protected HTTPSampleResult
Samples the URL passed in and stores the result inHTTPSampleResult
, following redirects and downloading page resources as appropriate.void
Each time through a Thread Group's test script, an iteration event is fired for each thread.void
Called for each thread after all samples have been processed.Methods inherited from class org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase
addArgument, addArgument, addEncodedArgument, addEncodedArgument, addEncodedArgument, addNonEncodedArgument, addNonEncodedArgument, addTestElement, applies, clearTestElementChildren, downloadPageResources, encodeBackSlashes, encodeSpaces, errorResult, followRedirects, getArguments, getAuthManager, getAutoRedirects, getCacheManager, getConcurrentPool, getConnectTimeout, getContentEncoding, getCookieManager, getDefaultPort, getDNSResolver, getDoBrowserCompatibleMultipart, getDomain, getDoMultipart, getDoMultipartPost, getEmbeddedUrlRE, getEmbededUrlExcludeRE, getFollowRedirects, getHeaderManager, getHTTPFileCount, getHTTPFiles, getImplementation, getIpSource, getIpSourceType, getKeystoreConfig, getMethod, getMonitor, getPath, getPort, getPortIfSpecified, getPostBodyRaw, getProps, getProtocol, getProxyHost, getProxyPass, getProxyPortInt, getProxyScheme, getProxyUser, getQueryString, getQueryString, getResponseTimeout, getSchema, getSendFileAsPostBody, getSendParameterValuesAsPostBody, getSourceTypeList, getUrl, getUseKeepAlive, getUseMultipart, getUseMultipartForPost, getValidMethodsAsArray, hasArguments, isConcurrentDwn, isImageParser, isMonitor, isProtocolDefaultPort, isSecure, isSecure, isSuccessCode, parseArguments, parseArguments, readResponse, replace, resultProcessing, sample, sample, setArguments, setAuthManager, setAutoRedirects, setCacheManager, setConcurrentDwn, setConcurrentPool, setConnectTimeout, setContentEncoding, setCookieManager, setDNSResolver, setDoBrowserCompatibleMultipart, setDomain, setDoMultipart, setDoMultipartPost, setEmbeddedUrlExcludeRE, setEmbeddedUrlRE, setFollowRedirects, setHeaderManager, setHTTPFiles, setImageParser, setImplementation, setIpSource, setIpSourceType, setKeystoreConfig, setMD5, setMethod, setMonitor, setMonitor, setPath, setPath, setPort, setPostBodyRaw, setProtocol, setProxyHost, setProxyPass, setProxyPortInt, setProxyScheme, setProxyUser, setResponseTimeout, setUseKeepAlive, testEnded, testEnded, testStarted, testStarted, threadStarted, toString, useMD5
Methods inherited from class org.apache.jmeter.testelement.AbstractTestElement
addPropertiesValues, addProperty, addProperty, canRemove, clear, clearTemporary, clone, emptyTemporary, equals, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getPropertyOrNull, getSearchableTokens, getThreadContext, getThreadName, hashCode, isEnabled, isRunningVersion, isTemporary, logProperties, mergeIn, propertyIterator, recoverRunningVersion, removeProperty, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse, traverseCollection, traverseMap, traverseProperty
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.jmeter.testelement.TestElement
canRemove, clear, clone, get, get, get, get, get, get, get, get, get, getComment, getName, getOrCreate, getOrCreate, getOrNull, getOrNull, getOrNull, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getPropertyOrNull, getPropertyOrNull, getString, getThreadContext, getThreadName, isEnabled, isRunningVersion, isTemporary, propertyIterator, recoverRunningVersion, removed, removeProperty, removeProperty, set, set, set, set, set, set, set, set, set, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse
-
Constructor Details
-
HTTPSamplerProxy
public HTTPSamplerProxy() -
HTTPSamplerProxy
Convenience method used to initialise the implementation.- Parameters:
impl
- the implementation to use.
-
-
Method Details
-
sample
Samples the URL passed in and stores the result inHTTPSampleResult
, following redirects and downloading page resources as appropriate.When getting a redirect target, redirects are not followed and resources are not downloaded. The caller will take care of this.
- Specified by:
sample
in classHTTPSamplerBase
- Parameters:
u
- URL to samplemethod
- HTTP method: GET, POST,...areFollowingRedirect
- whether we're getting a redirect targetdepth
- Depth of this target in the frame structure. Used only to prevent infinite recursion.- Returns:
- results of the sampling, can be null if u is in CacheManager
-
threadFinished
public void threadFinished()Description copied from interface:ThreadListener
Called for each thread after all samples have been processed. See org.apache.jmeter.threads.JMeterThread#threadFinished(org.apache.jmeter.engine.event.LoopIterationListener)- Specified by:
threadFinished
in interfaceThreadListener
- Overrides:
threadFinished
in classHTTPSamplerBase
-
interrupt
public boolean interrupt()Description copied from interface:Interruptible
Interrupt the current operation if possible.- Specified by:
interrupt
in interfaceInterruptible
- Returns:
true
if there was an operation to interrupt.
-
testIterationStart
Description copied from interface:TestIterationListener
Each time through a Thread Group's test script, an iteration event is fired for each thread. This will be after the test elements have been cloned, so in general the instance will not be the same as the ones the start/end methods call.- Specified by:
testIterationStart
in interfaceTestIterationListener
- Overrides:
testIterationStart
in classHTTPSamplerBase
- Parameters:
event
- the iteration event
-