## Uses of Interface
org.apache.hc.core5.reactor.IOSession

- Packages that use IOSession
  Package | Description
  --- | ---
  org.apache.hc.core5.http.impl.bootstrap | HTTP/1.1 requester and server bootstrap.
  org.apache.hc.core5.http.nio.command | Commands for HTTP transports based on asynchronous, event driven I/O model.
  org.apache.hc.core5.http2.impl.nio | Default implementation of HTTP/2 transport based on the asynchronous (non-blocking) I/O model.
  org.apache.hc.core5.http2.impl.nio.bootstrap | HTTP/2 capable requester and server bootstrap.
  org.apache.hc.core5.http2.nio.pool | HTTP/2 specific pool component APIs.
  org.apache.hc.core5.reactor | Event driven network communication APIs and components loosely based on Doug Lea's reactor pattern.
  org.apache.hc.core5.reactor.ssl | TLS/SSL support for I/O reactors.
  org.apache.hc.core5.testing.nio |

- - ### Uses of IOSession in org.apache.hc.core5.http.impl.bootstrap

    Methods in org.apache.hc.core5.http.impl.bootstrap that return types with arguments of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `Future<IOSession>` | AsyncRequester.`requestSession(HttpHost host, Timeout timeout, Object attachment, FutureCallback<IOSession> callback)`

    Method parameters in org.apache.hc.core5.http.impl.bootstrap with type arguments of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `Future<IOSession>` | AsyncRequester.`requestSession(HttpHost host, Timeout timeout, Object attachment, FutureCallback<IOSession> callback)`
    `AsyncServerBootstrap` | AsyncServerBootstrap.`setIOSessionDecorator(Decorator<IOSession> ioSessionDecorator)` Assigns `IOSession` `Decorator` instance.
    `AsyncRequesterBootstrap` | AsyncRequesterBootstrap.`setIOSessionDecorator(Decorator<IOSession> ioSessionDecorator)` Assigns `IOSession` `Decorator` instance.

    Constructor parameters in org.apache.hc.core5.http.impl.bootstrap with type arguments of type IOSession
    Constructor and Description
    `AsyncRequester(IOEventHandlerFactory eventHandlerFactory, IOReactorConfig ioReactorConfig, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, Callback<IOSession> sessionShutdownCallback, Resolver<HttpHost,InetSocketAddress> addressResolver)`
    `AsyncRequester(IOEventHandlerFactory eventHandlerFactory, IOReactorConfig ioReactorConfig, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, Callback<IOSession> sessionShutdownCallback, Resolver<HttpHost,InetSocketAddress> addressResolver)`
    `AsyncServer(IOEventHandlerFactory eventHandlerFactory, IOReactorConfig ioReactorConfig, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, Callback<IOSession> sessionShutdownCallback)`
    `AsyncServer(IOEventHandlerFactory eventHandlerFactory, IOReactorConfig ioReactorConfig, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, Callback<IOSession> sessionShutdownCallback)`
    `HttpAsyncRequester(IOReactorConfig ioReactorConfig, IOEventHandlerFactory eventHandlerFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, ManagedConnPool<HttpHost,IOSession> connPool)` Use `AsyncRequesterBootstrap` to create instances of this class.
    `HttpAsyncRequester(IOReactorConfig ioReactorConfig, IOEventHandlerFactory eventHandlerFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, ManagedConnPool<HttpHost,IOSession> connPool)` Use `AsyncRequesterBootstrap` to create instances of this class.
    `HttpAsyncRequester(IOReactorConfig ioReactorConfig, IOEventHandlerFactory eventHandlerFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, ManagedConnPool<HttpHost,IOSession> connPool, TlsStrategy tlsStrategy, Timeout handshakeTimeout)` Use `AsyncRequesterBootstrap` to create instances of this class.
    `HttpAsyncRequester(IOReactorConfig ioReactorConfig, IOEventHandlerFactory eventHandlerFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, ManagedConnPool<HttpHost,IOSession> connPool, TlsStrategy tlsStrategy, Timeout handshakeTimeout)` Use `AsyncRequesterBootstrap` to create instances of this class.
    `HttpAsyncServer(IOEventHandlerFactory eventHandlerFactory, IOReactorConfig ioReactorConfig, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener)` Use `AsyncServerBootstrap` to create instances of this class.
    `HttpAsyncServer(IOEventHandlerFactory eventHandlerFactory, IOReactorConfig ioReactorConfig, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, String canonicalName)` Use `AsyncServerBootstrap` to create instances of this class.

  - ### Uses of IOSession in org.apache.hc.core5.http.nio.command

    Fields in org.apache.hc.core5.http.nio.command with type parameters of type IOSession
    Modifier and Type | Field and Description
    --- | ---
    `static Callback<IOSession>` | ShutdownCommand.`GRACEFUL_IMMEDIATE_CALLBACK`
    `static Callback<IOSession>` | ShutdownCommand.`GRACEFUL_NORMAL_CALLBACK`

    Methods in org.apache.hc.core5.http.nio.command with parameters of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `static void` | CommandSupport.`cancelCommands(IOSession ioSession)` Cancels all pending session `Command`s.
    `static void` | CommandSupport.`failCommands(IOSession ioSession, Exception ex)` Fails all pending session `Command`s.

  - ### Uses of IOSession in org.apache.hc.core5.http2.impl.nio

    Methods in org.apache.hc.core5.http2.impl.nio with parameters of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `void` | ClientH2PrefaceHandler.`connected(IOSession session)`
    `void` | ServerH2PrefaceHandler.`connected(IOSession session)`
    `void` | HttpProtocolNegotiator.`connected(IOSession session)`
    `void` | HttpProtocolNegotiator.`disconnected(IOSession session)`
    `void` | HttpProtocolNegotiator.`exception(IOSession session, Exception cause)`
    `void` | ClientH2PrefaceHandler.`inputReady(IOSession session, ByteBuffer src)`
    `void` | ServerH2PrefaceHandler.`inputReady(IOSession session, ByteBuffer src)`
    `void` | HttpProtocolNegotiator.`inputReady(IOSession session, ByteBuffer src)`
    `void` | ClientH2PrefaceHandler.`outputReady(IOSession session)`
    `void` | ServerH2PrefaceHandler.`outputReady(IOSession session)`
    `void` | HttpProtocolNegotiator.`outputReady(IOSession session)`
    `void` | HttpProtocolNegotiator.`timeout(IOSession session, Timeout timeout)`

  - ### Uses of IOSession in org.apache.hc.core5.http2.impl.nio.bootstrap

    Method parameters in org.apache.hc.core5.http2.impl.nio.bootstrap with type arguments of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `H2RequesterBootstrap` | H2RequesterBootstrap.`setIOSessionDecorator(Decorator<IOSession> ioSessionDecorator)` Assigns `IOSession` `Decorator` instance.
    `H2ServerBootstrap` | H2ServerBootstrap.`setIOSessionDecorator(Decorator<IOSession> ioSessionDecorator)` Assigns `IOSession` `Decorator` instance.
    `H2MultiplexingRequesterBootstrap` | H2MultiplexingRequesterBootstrap.`setIOSessionDecorator(Decorator<IOSession> ioSessionDecorator)` Assigns `IOSession` `Decorator` instance.

    Constructor parameters in org.apache.hc.core5.http2.impl.nio.bootstrap with type arguments of type IOSession
    Constructor and Description
    `H2AsyncRequester(HttpVersionPolicy versionPolicy, IOReactorConfig ioReactorConfig, IOEventHandlerFactory eventHandlerFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, ManagedConnPool<HttpHost,IOSession> connPool)` Use `H2RequesterBootstrap` to create instances of this class.
    `H2AsyncRequester(HttpVersionPolicy versionPolicy, IOReactorConfig ioReactorConfig, IOEventHandlerFactory eventHandlerFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, ManagedConnPool<HttpHost,IOSession> connPool)` Use `H2RequesterBootstrap` to create instances of this class.
    `H2AsyncRequester(HttpVersionPolicy versionPolicy, IOReactorConfig ioReactorConfig, IOEventHandlerFactory eventHandlerFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, ManagedConnPool<HttpHost,IOSession> connPool, TlsStrategy tlsStrategy, Timeout handshakeTimeout)` Use `H2RequesterBootstrap` to create instances of this class.
    `H2AsyncRequester(HttpVersionPolicy versionPolicy, IOReactorConfig ioReactorConfig, IOEventHandlerFactory eventHandlerFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, ManagedConnPool<HttpHost,IOSession> connPool, TlsStrategy tlsStrategy, Timeout handshakeTimeout)` Use `H2RequesterBootstrap` to create instances of this class.
    `H2MultiplexingRequester(IOReactorConfig ioReactorConfig, IOEventHandlerFactory eventHandlerFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, Resolver<HttpHost,InetSocketAddress> addressResolver, TlsStrategy tlsStrategy)` Use `H2MultiplexingRequesterBootstrap` to create instances of this class.

  - ### Uses of IOSession in org.apache.hc.core5.http2.nio.pool

    Methods in org.apache.hc.core5.http2.nio.pool that return types with arguments of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `protected Future<IOSession>` | H2ConnPool.`connectSession(HttpHost namedEndpoint, Timeout connectTimeout, FutureCallback<IOSession> callback)`

    Methods in org.apache.hc.core5.http2.nio.pool with parameters of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `protected void` | H2ConnPool.`closeSession(IOSession ioSession, CloseMode closeMode)`
    `protected void` | H2ConnPool.`validateSession(IOSession ioSession, Callback<Boolean> callback)`

    Method parameters in org.apache.hc.core5.http2.nio.pool with type arguments of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `protected Future<IOSession>` | H2ConnPool.`connectSession(HttpHost namedEndpoint, Timeout connectTimeout, FutureCallback<IOSession> callback)`

  - ### Uses of IOSession in org.apache.hc.core5.reactor

    Subinterfaces of IOSession in org.apache.hc.core5.reactor
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `ProtocolIOSession` TLS capable, protocol upgradable `IOSession`.

    Methods in org.apache.hc.core5.reactor that return types with arguments of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `Future<IOSession>` | ConnectionInitiator.`connect(NamedEndpoint remoteEndpoint, SocketAddress remoteAddress, SocketAddress localAddress, Timeout timeout, Object attachment, FutureCallback<IOSession> callback)` Requests a connection to a remote host.
    `protected abstract Future<IOSession>` | AbstractIOSessionPool.`connectSession(T namedEndpoint, Timeout connectTimeout, FutureCallback<IOSession> callback)`
    `Future<IOSession>` | AbstractIOSessionPool.`getSession(T endpoint, Timeout connectTimeout, FutureCallback<IOSession> callback)`

    Methods in org.apache.hc.core5.reactor with parameters of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `protected abstract void` | AbstractIOSessionPool.`closeSession(IOSession ioSession, CloseMode closeMode)`
    `void` | IOSessionListener.`connected(IOSession session)`
    `void` | IOEventHandler.`connected(IOSession session)` Triggered after the given session has been just created.
    `void` | IOSessionListener.`disconnected(IOSession session)`
    `void` | IOEventHandler.`disconnected(IOSession session)` Triggered when the given session has been terminated.
    `void` | IOSessionListener.`exception(IOSession session, Exception ex)`
    `void` | IOEventHandler.`exception(IOSession session, Exception cause)` Triggered when the given session throws a exception.
    `void` | IOSessionListener.`inputReady(IOSession session)`
    `void` | IOEventHandler.`inputReady(IOSession session, ByteBuffer src)` Triggered when the given session has input pending.
    `void` | IOSessionListener.`outputReady(IOSession session)`
    `void` | IOEventHandler.`outputReady(IOSession session)` Triggered when the given session is ready for output.
    `void` | IOSessionListener.`startTls(IOSession session)`
    `void` | IOSessionListener.`timeout(IOSession session)`
    `void` | IOEventHandler.`timeout(IOSession session, Timeout timeout)` Triggered when the given session has timed out.
    `protected abstract void` | AbstractIOSessionPool.`validateSession(IOSession ioSession, Callback<Boolean> callback)`

    Method parameters in org.apache.hc.core5.reactor with type arguments of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `Future<IOSession>` | ConnectionInitiator.`connect(NamedEndpoint remoteEndpoint, SocketAddress remoteAddress, SocketAddress localAddress, Timeout timeout, Object attachment, FutureCallback<IOSession> callback)` Requests a connection to a remote host.
    `protected abstract Future<IOSession>` | AbstractIOSessionPool.`connectSession(T namedEndpoint, Timeout connectTimeout, FutureCallback<IOSession> callback)`
    `void` | AbstractIOSessionPool.`enumAvailable(Callback<IOSession> callback)`
    `Future<IOSession>` | AbstractIOSessionPool.`getSession(T endpoint, Timeout connectTimeout, FutureCallback<IOSession> callback)`

    Constructor parameters in org.apache.hc.core5.reactor with type arguments of type IOSession
    Constructor and Description
    `DefaultConnectingIOReactor(IOEventHandlerFactory eventHandlerFactory, IOReactorConfig config, Callback<IOSession> sessionShutdownCallback)`
    `DefaultConnectingIOReactor(IOEventHandlerFactory eventHandlerFactory, IOReactorConfig ioReactorConfig, ThreadFactory threadFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, Callback<IOSession> sessionShutdownCallback)`
    `DefaultConnectingIOReactor(IOEventHandlerFactory eventHandlerFactory, IOReactorConfig ioReactorConfig, ThreadFactory threadFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, Callback<IOSession> sessionShutdownCallback)`
    `DefaultListeningIOReactor(IOEventHandlerFactory eventHandlerFactory, IOReactorConfig config, Callback<IOSession> sessionShutdownCallback)` Creates an instance of DefaultListeningIOReactor with the given configuration.
    `DefaultListeningIOReactor(IOEventHandlerFactory eventHandlerFactory, IOReactorConfig ioReactorConfig, ThreadFactory dispatchThreadFactory, ThreadFactory listenerThreadFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, Callback<IOSession> sessionShutdownCallback)` Creates an instance of DefaultListeningIOReactor with the given configuration.
    `DefaultListeningIOReactor(IOEventHandlerFactory eventHandlerFactory, IOReactorConfig ioReactorConfig, ThreadFactory dispatchThreadFactory, ThreadFactory listenerThreadFactory, Decorator<IOSession> ioSessionDecorator, Callback<Exception> exceptionCallback, IOSessionListener sessionListener, Callback<IOSession> sessionShutdownCallback)` Creates an instance of DefaultListeningIOReactor with the given configuration.

  - ### Uses of IOSession in org.apache.hc.core5.reactor.ssl

    Classes in org.apache.hc.core5.reactor.ssl that implement IOSession
    Modifier and Type | Class and Description
    --- | ---
    `class` | `SSLIOSession` `SSLIOSession` is a decorator class intended to transparently extend an `IOSession` with transport layer security capabilities based on the SSL/TLS protocol.

    Methods in org.apache.hc.core5.reactor.ssl with parameters of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `void` | SSLIOSession.`beginHandshake(IOSession protocolSession)`

    Constructors in org.apache.hc.core5.reactor.ssl with parameters of type IOSession
    Constructor and Description
    `SSLIOSession(NamedEndpoint targetEndpoint, IOSession session, SSLMode sslMode, SSLContext sslContext, SSLBufferMode sslBufferMode, SSLSessionInitializer initializer, SSLSessionVerifier verifier, Callback<SSLIOSession> sessionStartCallback, Callback<SSLIOSession> sessionEndCallback, Timeout connectTimeout)` Creates new instance of `SSLIOSession` class.
    `SSLIOSession(NamedEndpoint targetEndpoint, IOSession session, SSLMode sslMode, SSLContext sslContext, SSLBufferMode sslBufferMode, SSLSessionInitializer initializer, SSLSessionVerifier verifier, Timeout handshakeTimeout, Callback<SSLIOSession> sessionStartCallback, Callback<SSLIOSession> sessionEndCallback, FutureCallback<SSLSession> resultCallback)` Creates new instance of `SSLIOSession` class.

  - ### Uses of IOSession in org.apache.hc.core5.testing.nio

    Classes in org.apache.hc.core5.testing.nio that implement IOSession
    Modifier and Type | Class and Description
    --- | ---
    `class` | `LoggingIOSession`

    Methods in org.apache.hc.core5.testing.nio that return IOSession
    Modifier and Type | Method and Description
    --- | ---
    `IOSession` | LoggingIOSessionDecorator.`decorate(IOSession ioSession)`

    Methods in org.apache.hc.core5.testing.nio that return types with arguments of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `Future<IOSession>` | AsyncRequester.`connect(NamedEndpoint remoteEndpoint, SocketAddress remoteAddress, SocketAddress localAddress, Timeout timeout, Object attachment, FutureCallback<IOSession> callback)`
    `Future<IOSession>` | AsyncRequester.`requestSession(HttpHost host, Timeout timeout, FutureCallback<IOSession> callback)`

    Methods in org.apache.hc.core5.testing.nio with parameters of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `void` | LoggingIOSessionListener.`connected(IOSession session)`
    `IOSession` | LoggingIOSessionDecorator.`decorate(IOSession ioSession)`
    `void` | LoggingIOSessionListener.`disconnected(IOSession session)`
    `void` | LoggingIOSessionListener.`exception(IOSession session, Exception ex)`
    `void` | LoggingIOSessionListener.`inputReady(IOSession session)`
    `void` | LoggingIOSessionListener.`outputReady(IOSession session)`
    `void` | LoggingIOSessionListener.`startTls(IOSession session)`
    `void` | LoggingIOSessionListener.`timeout(IOSession session)`

    Method parameters in org.apache.hc.core5.testing.nio with type arguments of type IOSession
    Modifier and Type | Method and Description
    --- | ---
    `Future<IOSession>` | AsyncRequester.`connect(NamedEndpoint remoteEndpoint, SocketAddress remoteAddress, SocketAddress localAddress, Timeout timeout, Object attachment, FutureCallback<IOSession> callback)`
    `Future<IOSession>` | AsyncRequester.`requestSession(HttpHost host, Timeout timeout, FutureCallback<IOSession> callback)`

    Constructors in org.apache.hc.core5.testing.nio with parameters of type IOSession
    Constructor and Description
    `ClientSessionEndpoint(IOSession ioSession)`
    `LoggingIOSession(IOSession session, org.slf4j.Logger log, org.slf4j.Logger wireLog)`

Copyright © 2005–2022 The Apache Software Foundation. All rights reserved.