@Internal public interface AsyncExecRuntime
This interface is considered internal and generally ought not be used or accessed by custom request exec handlers.
| Modifier and Type | Method and Description |
|---|---|
Cancellable |
acquireEndpoint(String id,
HttpRoute route,
Object state,
HttpClientContext context,
FutureCallback<AsyncExecRuntime> callback)
Initiates operation to acquire a connection endpoint.
|
Cancellable |
connectEndpoint(HttpClientContext context,
FutureCallback<AsyncExecRuntime> callback)
Initiates operation to connect the local endpoint to the initial hop (connection
target in case of a direct route or to the first proxy hop in case of a route
via a proxy or multiple proxies).
|
void |
discardEndpoint()
Shuts down and discards the acquired endpoint.
|
Cancellable |
execute(String id,
AsyncClientExchangeHandler exchangeHandler,
HttpClientContext context)
Initiates a message exchange using the given handler.
|
AsyncExecRuntime |
fork()
Forks this runtime for parallel execution.
|
boolean |
isEndpointAcquired()
Determines of a connection endpoint has been acquired.
|
boolean |
isEndpointConnected()
Determines of there the endpoint is connected to the initial hop (connection target
in case of a direct route or to the first proxy hop in case of a route via a proxy
or multiple proxies).
|
void |
markConnectionNonReusable()
Marks the connection as non re-usable.
|
void |
markConnectionReusable(Object state,
TimeValue validityTime)
Marks the connection as potentially re-usable for the given period of time
and also marks it as stateful if the state representation is given.
|
void |
releaseEndpoint()
Releases the acquired endpoint potentially making it available for re-use.
|
void |
upgradeTls(HttpClientContext context)
Upgrades transport security of the active connection by using the TLS security protocol.
|
boolean |
validateConnection()
Validates the connection making sure it can be used to execute requests.
|
Cancellable acquireEndpoint(String id, HttpRoute route, Object state, HttpClientContext context, FutureCallback<AsyncExecRuntime> callback)
id - unique operation ID or null.route - the connection route.state - the expected connection state. May be null if connection
can be state-less or its state is irrelevant.context - the execution context.callback - the result callback.Cancellable connectEndpoint(HttpClientContext context, FutureCallback<AsyncExecRuntime> callback)
context - the execution context.callback - the result callback.void discardEndpoint()
Cancellable execute(String id, AsyncClientExchangeHandler exchangeHandler, HttpClientContext context)
id - unique operation ID or null.exchangeHandler - the client message handler.context - the execution context.AsyncExecRuntime fork()
boolean isEndpointAcquired()
true if an endpoint has been acquired, false otherwise.boolean isEndpointConnected()
true if the endpoint is connected, false otherwise.void markConnectionNonReusable()
void markConnectionReusable(Object state, TimeValue validityTime)
state - the connection state representation or null if stateless.validityTime - the period of time this connection is valid for.void releaseEndpoint()
void upgradeTls(HttpClientContext context)
context - the execution context.boolean validateConnection()
true if the connection is valid, false.