Apache JMeter

## org.apache.jmeter.protocol.http.sampler
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, HTTPConstantsInterface, Interruptible, Sampler, TestElement, TestListener, ThreadListener

    public final class HTTPSamplerProxy

extends HTTPSamplerBase
implements Interruptible

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:
  Serialized Form

Nested Class Summary

Nested classes/interfaces inherited from class org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase
`HTTPSamplerBase.ASyncSample`

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, DO_MULTIPART_POST, DOMAIN, EMBEDDED_URL_RE, FOLLOW_REDIRECTS, HEADER_MANAGER, IMAGE_PARSER, IMPLEMENTATION, IP_SOURCE, MAX_FRAME_DEPTH, MAX_REDIRECTS, METHOD, MONITOR, NON_HTTP_RESPONSE_CODE, NON_HTTP_RESPONSE_MESSAGE, PATH, PORT, PROTOCOL, PROXYHOST, PROXYPASS, PROXYPORT, PROXYUSER, RESPONSE_TIMEOUT, 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, 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_LOCATION, HEADER_SET_COOKIE, HTTP_1_1, IF_MODIFIED_SINCE, IF_NONE_MATCH, KEEP_ALIVE, LAST_MODIFIED, MULTIPART_FORM_DATA, OPTIONS, POST, PROTOCOL_HTTP, PROTOCOL_HTTPS, PUT, TRACE, TRANSFER_ENCODING`

Fields inherited from interface org.apache.jmeter.testelement.TestElement
`COMMENTS, ENABLED, GUI_CLASS, NAME, TEST_CLASS`

Constructor Summary
`HTTPSamplerProxy()`
`HTTPSamplerProxy(String impl)` Convenience method used to initialise the implementation.

Method Summary
`boolean` `interrupt()` Interrupt the current operation if possible.
`protected void` `notifySSLContextWasReset()` Called by testIterationStart if the SSL Context was reset. This implementation forwards to the implementation class.
`protected HTTPSampleResult` `sample(URL u, String method, boolean areFollowingRedirect, int depth)` Samples the URL passed in and stores the result in `HTTPSampleResult`, following redirects and downloading page resources as appropriate.
`void` `threadFinished()` 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, addTestElement, clearTestElementChildren, clone, downloadPageResources, encodeBackSlashes, encodeSpaces, errorResult, followRedirects, getArguments, getAuthManager, getAutoRedirects, getCacheManager, getConcurrentPool, getConnectTimeout, getContentEncoding, getCookieManager, getDefaultPort, getDoBrowserCompatibleMultipart, getDomain, getDoMultipartPost, getEmbeddedUrlRE, getFollowRedirects, getHeaderManager, getHTTPFileCount, getHTTPFiles, getImplementation, getIpSource, getMethod, getMonitor, getPath, getPort, getPortIfSpecified, getProtocol, getProxyHost, getProxyPass, getProxyPortInt, getProxyUser, getQueryString, getQueryString, getResponseTimeout, getSendFileAsPostBody, getSendParameterValuesAsPostBody, getUrl, getUseKeepAlive, getUseMultipartForPost, getValidMethodsAsArray, hasArguments, isConcurrentDwn, isImageParser, isMonitor, isProtocolDefaultPort, isSecure, isSecure, isSuccessCode, parseArguments, parseArguments, readResponse, resultProcessing, sample, sample, setArguments, setAuthManager, setAutoRedirects, setCacheManager, setConcurrentDwn, setConcurrentPool, setConnectTimeout, setContentEncoding, setCookieManager, setDoBrowserCompatibleMultipart, setDomain, setDoMultipartPost, setEmbeddedUrlRE, setFollowRedirects, setHeaderManager, setHTTPFiles, setImageParser, setImplementation, setIpSource, setMD5, setMethod, setMonitor, setMonitor, setPath, setPath, setPort, setProtocol, setResponseTimeout, setUseKeepAlive, testEnded, testEnded, testIterationStart, testStarted, testStarted, threadStarted, toString, useMD5`

Methods inherited from class org.apache.jmeter.testelement.AbstractTestElement

`addProperty, canRemove, clear, clearTemporary, emptyTemporary, equals, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getThreadContext, getThreadName, hashCode, isEnabled, isRunningVersion, isTemporary, logProperties, mergeIn, propertyIterator, recoverRunningVersion, removeProperty, setComment, setName, 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, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getThreadContext, getThreadName, isEnabled, isRunningVersion, isTemporary, propertyIterator, recoverRunningVersion, removeProperty, setComment, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse`

Constructor Detail

### HTTPSamplerProxy

    public HTTPSamplerProxy()

### HTTPSamplerProxy

    public HTTPSamplerProxy(String impl)

  Convenience method used to initialise the implementation.

  Parameters:
    `impl` - the implementation to use.

Method Detail

### sample

    protected HTTPSampleResult sample(URL u,
                                      String method,
                                      boolean areFollowingRedirect,
                                      int depth)

  Samples the URL passed in and stores the result in `HTTPSampleResult`, 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 class `HTTPSamplerBase`
  Parameters:
    `u` - URL to sample
    `method` - HTTP method: GET, POST,...
    `areFollowingRedirect` - whether we're getting a redirect target
    `depth` - Depth of this target in the frame structure. Used only to prevent infinite recursion.
  Returns:
    results of the sampling

### threadFinished

    public void threadFinished()

  Description copied from interface: `ThreadListener`
  Called for each thread after all samples have been processed.

  Specified by:
    `threadFinished` in interface `ThreadListener`
  Overrides:
    `threadFinished` in class `HTTPSamplerBase`
  See Also:
    `JMeterThread.threadFinished(LoopIterationListener)`

### interrupt

    public boolean interrupt()

  Description copied from interface: `Interruptible`
  Interrupt the current operation if possible.

  Specified by:
    `interrupt` in interface `Interruptible`
  Returns:
    `true` if there was an operation to interrupt.

### notifySSLContextWasReset

    protected void notifySSLContextWasReset()

  Called by testIterationStart if the SSL Context was reset. This implementation does nothing. This implementation forwards to the implementation class.

  Overrides:
    `notifySSLContextWasReset` in class `HTTPSamplerBase`

Apache JMeter

Copyright © 1998-2011 Apache Software Foundation. All Rights Reserved.