org.apache.jmeter.protocol.http.sampler

## Class HTTPHCAbstractImpl

- java.lang.Object
- - org.apache.jmeter.protocol.http.sampler.HTTPAbstractImpl
  - - org.apache.jmeter.protocol.http.sampler.HTTPHCAbstractImpl

All Implemented Interfaces:
  HTTPConstantsInterface, Interruptible

Direct Known Subclasses:
  HTTPHC4Impl

    public abstract class HTTPHCAbstractImpl
    extends HTTPAbstractImpl

Common parent class for HttpClient implementations. Includes system property settings that are handled internally by the Java HTTP implementation, but which need to be explicitly configured in HttpClient implementations.

### Field Summary

Fields
`protected static int` `CPS_HTTP`
`protected static int` `CPS_HTTPS` Deprecated. Not used
`protected static String` `HTTP_VERSION`
`protected static InetAddress` `localAddress`
`protected static String` `LOCALHOST`
`protected static int` `NON_PROXY_HOST_SUFFIX_SIZE`
`protected static String` `NONPROXY_HOSTS`
`protected static Set<String>` `nonProxyHostFull`
`protected static List<String>` `nonProxyHostSuffix`
`protected static boolean` `PROXY_DEFINED`
`protected static String` `PROXY_DOMAIN`
`protected static String` `PROXY_HOST`
`protected static String` `PROXY_PASS`
`protected static int` `PROXY_PORT`
`protected static String` `PROXY_SCHEME`
`protected static String` `PROXY_USER`
`protected static boolean` `RESET_STATE_ON_THREAD_GROUP_ITERATION` Reset HTTP State when starting a new Thread Group iteration
`protected static ThreadLocal<Boolean>` `resetStateOnThreadGroupIteration` Whether SSL State/Context should be reset Shared state for any HC based implementation, because SSL contexts are the same
`protected static int` `SO_TIMEOUT`
`protected static boolean` `USE_CACHED_SSL_CONTEXT` Deprecated. use httpclient.reset_state_on_thread_group_iteration instead
`protected static boolean` `USE_LOOPBACK`

### Fields inherited from class org.apache.jmeter.protocol.http.sampler.HTTPAbstractImpl

`ADD_CONTENT_TYPE_TO_POST_IF_MISSING, ALL_EXCEPT_COOKIE, ONLY_COOKIE, testElement`

### 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_SEE_OTHER, SC_TEMPORARY_REDIRECT, SEARCH, TRACE, TRANSFER_ENCODING, UNLOCK, VARY`

### Constructor Summary

Constructors
`protected` `HTTPHCAbstractImpl(HTTPSamplerBase testElement)`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`protected boolean` `isDynamicProxy(String proxyHost, int proxyPort)` Is a dynamic proxy defined?
`protected static boolean` `isNonProxy(String host)`
`protected static boolean` `isNullOrEmptyTrimmed(String value)`
`protected static boolean` `isPartialMatch(String host)`
`protected static boolean` `isStaticProxy(String host)` Is a static proxy defined?

### Methods inherited from class org.apache.jmeter.protocol.http.sampler.HTTPAbstractImpl

`configureSampleLabel, errorResult, getArguments, getAuthManager, getAutoRedirects, getCacheManager, getConnectTimeout, getContentEncoding, getCookieManager, getDoBrowserCompatibleMultipart, getHeaderManager, getHTTPFiles, getIpSource, getIpSourceAddress, getProxyHost, getProxyPass, getProxyPortInt, getProxyScheme, getProxyUser, getResponseTimeout, getSendFileAsPostBody, getSendParameterValuesAsPostBody, getUseKeepAlive, getUseMultipart, getUseMultipartForPost, hasArguments, isMonitor, isSuccessCode, notifyFirstSampleAfterLoopRestart, notifySSLContextWasReset, readResponse, readResponse, readResponse, readResponse, resultProcessing, sample, setUseKeepAlive, threadFinished, updateSampleResultForResourceInCache`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Methods inherited from interface org.apache.jmeter.samplers.Interruptible

`interrupt`

### Field Detail

#### PROXY_SCHEME

    protected static final String PROXY_SCHEME

#### PROXY_HOST

    protected static final String PROXY_HOST

#### NONPROXY_HOSTS

    protected static final String NONPROXY_HOSTS

#### PROXY_PORT

    protected static final int PROXY_PORT

#### PROXY_DEFINED

    protected static final boolean PROXY_DEFINED

#### PROXY_USER

    protected static final String PROXY_USER

#### PROXY_PASS

    protected static final String PROXY_PASS

#### PROXY_DOMAIN

    protected static final String PROXY_DOMAIN

#### localAddress

    protected static final InetAddress localAddress

#### LOCALHOST

    protected static final String LOCALHOST

#### nonProxyHostFull

    protected static final Set<String> nonProxyHostFull

#### nonProxyHostSuffix

    protected static final List<String> nonProxyHostSuffix

#### NON_PROXY_HOST_SUFFIX_SIZE

    protected static final int NON_PROXY_HOST_SUFFIX_SIZE

#### CPS_HTTP

    protected static final int CPS_HTTP

#### CPS_HTTPS

    @Deprecated
    protected static final int CPS_HTTPS

Deprecated. Not used

#### USE_LOOPBACK

    protected static final boolean USE_LOOPBACK

#### HTTP_VERSION

    protected static final String HTTP_VERSION

#### SO_TIMEOUT

    protected static final int SO_TIMEOUT

#### RESET_STATE_ON_THREAD_GROUP_ITERATION

    protected static final boolean RESET_STATE_ON_THREAD_GROUP_ITERATION

Reset HTTP State when starting a new Thread Group iteration

#### USE_CACHED_SSL_CONTEXT

    @Deprecated
    protected static final boolean USE_CACHED_SSL_CONTEXT

Deprecated. use httpclient.reset_state_on_thread_group_iteration instead
Control reuse of cached SSL Context in subsequent iterations

#### resetStateOnThreadGroupIteration

    protected static final ThreadLocal<Boolean> resetStateOnThreadGroupIteration

Whether SSL State/Context should be reset Shared state for any HC based implementation, because SSL contexts are the same

### Constructor Detail

#### HTTPHCAbstractImpl

    protected HTTPHCAbstractImpl(HTTPSamplerBase testElement)

### Method Detail

#### isNonProxy

    protected static boolean isNonProxy(String host)

#### isPartialMatch

    protected static boolean isPartialMatch(String host)

#### isDynamicProxy

    protected boolean isDynamicProxy(String proxyHost,
                                     int proxyPort)

Is a dynamic proxy defined?

Parameters:
  `proxyHost` - the host to check
  `proxyPort` - the port to check
Returns:
  `true` iff both ProxyPort and ProxyHost are defined.

#### isStaticProxy

    protected static boolean isStaticProxy(String host)

Is a static proxy defined?

Parameters:
  `host` - to check against non-proxy hosts
Returns:
  `true` iff a static proxy has been defined.

#### isNullOrEmptyTrimmed

    protected static boolean isNullOrEmptyTrimmed(String value)

Parameters:
  `value` - String value to test
Returns:
  true if value is null or empty trimmed