@Internal public interface HttpAsyncCacheInvalidator {
@Internal public interface HttpCacheInvalidator {
@Internal public class DefaultCacheInvalidator extends CacheInvalidatorBase implements HttpCacheInvalidator {
@Internal public class DefaultAsyncCacheInvalidator extends CacheInvalidatorBase implements HttpAsyncCacheInvalidator {
/** * Represents application protocol layer. * * @since 5.0 */ @Internal public interface ProtocolLayer { IOEventHandler getHandler(); void upgrade(IOEventHandler handler); }
/** * Request exec chain customization and extension. * <p> * For internal use. */ @Internal protected void customizeExecChain(final NamedElementChain<ExecChainHandler> execChainDefinition) { }
/** * Request exec chain customization and extension. * <p> * For internal use. */ @Internal protected void customizeExecChain(final NamedElementChain<AsyncExecChainHandler> execChainDefinition) { }
/** * {@link IOEventHandler} that also exposes {@link HttpConnection} properties. * * @since 5.0 */ @Internal public interface HttpConnectionEventHandler extends IOEventHandler, HttpConnection { }
/** * Use {@link AsyncServerBootstrap} to create instances of this class. */ @Internal public HttpAsyncServer( final IOEventHandlerFactory eventHandlerFactory, final IOReactorConfig ioReactorConfig, final Decorator<IOSession> ioSessionDecorator, final IOSessionListener sessionListener) { super(eventHandlerFactory, ioReactorConfig, ioSessionDecorator, sessionListener, ShutdownCommand.GRACEFUL_NORMAL_CALLBACK); }
/** * Abstract executable command that may need to do some cleaning up * in case of an failure and also optionally may want to cancel * the associated HTTP message exchange through {@link CancellableDependency}. * * @since 5.0 */ @Internal public abstract class ExecutableCommand implements Command { public abstract CancellableDependency getCancellableDependency(); public abstract void failed(Exception ex); }
/** * Represents application protocol layer. * * @since 5.0 */ @Internal public interface ProtocolLayer { IOEventHandler getHandler(); void upgrade(IOEventHandler handler); }
/** * Request exec chain customization and extension. * <p> * For internal use. */ @Internal protected void customizeExecChain(final NamedElementChain<AsyncExecChainHandler> execChainDefinition) { }
/** * Use {@link AsyncServerBootstrap} to create instances of this class. */ @Internal public HttpAsyncServer( final IOEventHandlerFactory eventHandlerFactory, final IOReactorConfig ioReactorConfig, final Decorator<IOSession> ioSessionDecorator, final IOSessionListener sessionListener) { super(eventHandlerFactory, ioReactorConfig, ioSessionDecorator, sessionListener, ShutdownCommand.GRACEFUL_NORMAL_CALLBACK); }
/** * Abstract executable command that may need to do some cleaning up * in case of an failure and also optionally may want to cancel * the associated HTTP message exchange through {@link CancellableDependency}. * * @since 5.0 */ @Internal public abstract class ExecutableCommand implements Command { public abstract CancellableDependency getCancellableDependency(); public abstract void failed(Exception ex); }
/** * {@link IOEventHandler} that also exposes {@link HttpConnection} properties. * * @since 5.0 */ @Internal public interface HttpConnectionEventHandler extends IOEventHandler, HttpConnection { }
@Internal public HttpAuthenticator(final Logger log) { super(); this.log = log != null ? log : LoggerFactory.getLogger(getClass()); this.parser = new AuthChallengeParser(); }
/** * HTTP/1.1 stream event listener. * * @since 5.0 */ @Contract(threading = ThreadingBehavior.STATELESS) @Internal public interface Http1StreamListener { void onRequestHead(HttpConnection connection, HttpRequest request); void onResponseHead(HttpConnection connection, HttpResponse response); void onExchangeComplete(HttpConnection connection, boolean keepAlive); }
/** * HTTP/1.1 stream event listener. * * @since 5.0 */ @Contract(threading = ThreadingBehavior.STATELESS) @Internal public interface Http1StreamListener { void onRequestHead(HttpConnection connection, HttpRequest request); void onResponseHead(HttpConnection connection, HttpResponse response); void onExchangeComplete(HttpConnection connection, boolean keepAlive); }
@Internal protected PoolingHttpClientConnectionManager( final HttpClientConnectionOperator httpClientConnectionOperator, final ManagedConnPool<HttpRoute, ManagedHttpClientConnection> pool, final HttpConnectionFactory<ManagedHttpClientConnection> connFactory) { super(); this.connectionOperator = Args.notNull(httpClientConnectionOperator, "Connection operator"); this.pool = Args.notNull(pool, "Connection pool"); this.connFactory = connFactory != null ? connFactory : ManagedHttpClientConnectionFactory.INSTANCE; this.closed = new AtomicBoolean(false); }
@Internal protected PoolingAsyncClientConnectionManager( final ManagedConnPool<HttpRoute, ManagedAsyncClientConnection> pool, final AsyncClientConnectionOperator connectionOperator) { this.connectionOperator = Args.notNull(connectionOperator, "Connection operator"); this.pool = Args.notNull(pool, "Connection pool"); this.closed = new AtomicBoolean(false); }