# Package org.jboss.netty.channel

The core channel API which is asynchronous and event-driven abstraction of various transports such as a NIO Channel.

See: Description

Interface Summary
Interface | Description
--- | ---
Channel | A nexus to a network socket or a component which is capable of I/O operations such as read, write, connect, and bind.
ChannelConfig | A set of configuration properties of a `Channel`.
ChannelDownstreamHandler | Handles or intercepts a downstream `ChannelEvent`, and sends a `ChannelEvent` to the next handler in a `ChannelPipeline`.
ChannelEvent | An I/O event or I/O request associated with a `Channel`.
ChannelFactory | The main interface to a transport that creates a `Channel` associated with a certain communication entity such as a network socket.
ChannelFuture | The result of an asynchronous `Channel` I/O operation.
ChannelFutureListener | Listens to the result of a `ChannelFuture`.
ChannelFutureProgressListener | Listens to the progress of a time-consuming I/O operation such as a large file transfer.
ChannelHandler | Handles or intercepts a `ChannelEvent`, and sends a `ChannelEvent` to the next handler in a `ChannelPipeline`.
ChannelHandlerContext | Enables a `ChannelHandler` to interact with its `ChannelPipeline` and other handlers.
ChannelPipeline | A list of `ChannelHandler`s which handles or intercepts `ChannelEvent`s of a `Channel`.
ChannelPipelineFactory | Creates a new `ChannelPipeline` for a new `Channel`.
ChannelSink | Receives and processes the terminal downstream `ChannelEvent`s.
ChannelStateEvent | A `ChannelEvent` which represents the change of the `Channel` state.
ChannelUpstreamHandler | Handles or intercepts an upstream `ChannelEvent`, and sends a `ChannelEvent` to the next handler in a `ChannelPipeline`.
ChildChannelStateEvent | A `ChannelEvent` which represents the notification of the state of a child `Channel`.
ExceptionEvent | A `ChannelEvent` which represents the notification of an exception raised by a `ChannelHandler` or an I/O thread.
FileRegion | A region of a file that is sent via a `Channel` which supports zero-copy file transfer.
LifeCycleAwareChannelHandler | A `ChannelHandler` that is notified when it is added to or removed from a `ChannelPipeline`.
MessageEvent | A `ChannelEvent` which represents the transmission or reception of a message.
ReceiveBufferSizePredictor | Predicts the number of readable bytes in the receive buffer of a `Channel`.
ReceiveBufferSizePredictorFactory | Creates a new `ReceiveBufferSizePredictor`.
ServerChannel | A `Channel` that accepts an incoming connection attempt and creates its child `Channel`s by accepting them.
ServerChannelFactory | A `ChannelFactory` that creates a `ServerChannel`.
WriteCompletionEvent | A `ChannelEvent` which represents the notification of the completion of a write request on a `Channel`.

Class Summary
Class | Description
--- | ---
AbstractChannel | A skeletal `Channel` implementation.
AbstractChannelSink | A skeletal `ChannelSink` implementation.
AbstractServerChannel | A skeletal server-side `Channel` implementation.
AdaptiveReceiveBufferSizePredictor | The `ReceiveBufferSizePredictor` that automatically increases and decreases the predicted buffer size on feed back.
AdaptiveReceiveBufferSizePredictorFactory | The `ReceiveBufferSizePredictorFactory` that creates a new `AdaptiveReceiveBufferSizePredictor`.
ChannelLocal<T> | A global variable that is local to a `Channel`.
Channels | A helper class which provides various convenience methods related with `Channel`, `ChannelHandler`, and `ChannelPipeline`.
CompleteChannelFuture | A skeletal `ChannelFuture` implementation which represents a `ChannelFuture` which has been completed already.
DefaultChannelConfig | The default `SocketChannelConfig` implementation.
DefaultChannelFuture | The default `ChannelFuture` implementation.
DefaultChannelPipeline | The default `ChannelPipeline` implementation.
DefaultChildChannelStateEvent | The default `ChildChannelStateEvent` implementation.
DefaultExceptionEvent | The default `ExceptionEvent` implementation.
DefaultFileRegion |
DefaultServerChannelConfig | The default `ServerSocketChannelConfig` implementation.
DefaultWriteCompletionEvent | The default `WriteCompletionEvent` implementation.
DownstreamChannelStateEvent | The default downstream `ChannelStateEvent` implementation.
DownstreamMessageEvent | The default downstream `MessageEvent` implementation.
FailedChannelFuture | The `CompleteChannelFuture` which is failed already.
FixedReceiveBufferSizePredictor | The `ReceiveBufferSizePredictor` that always yields the same buffer size prediction.
FixedReceiveBufferSizePredictorFactory | The `ReceiveBufferSizePredictorFactory` that returns a `FixedReceiveBufferSizePredictor` with the pre-defined configuration.
SimpleChannelDownstreamHandler | A `ChannelDownstreamHandler` which provides an individual handler method for each event type.
SimpleChannelHandler | A `ChannelHandler` which provides an individual handler method for each event type.
SimpleChannelUpstreamHandler | A `ChannelUpstreamHandler` which provides an individual handler method for each event type.
StaticChannelPipeline | Deprecated use `DefaultChannelPipeline`
SucceededChannelFuture | The `CompleteChannelFuture` which is succeeded already.
UpstreamChannelStateEvent | The default upstream `ChannelStateEvent` implementation.
UpstreamMessageEvent | The default upstream `MessageEvent` implementation.

Enum Summary
Enum | Description
--- | ---
ChannelState | The current or future state of a `Channel`.

Exception Summary
Exception | Description
--- | ---
ChannelException | A `RuntimeException` which is thrown when an I/O operation fails.
ChannelHandlerLifeCycleException | A `RuntimeException` which is thrown when a `LifeCycleAwareChannelHandler` throws an `Exception` in its handler methods.
ChannelPipelineException | A `ChannelException` which is thrown when a `ChannelPipeline` failed to process a `ChannelEvent` or when a `ChannelPipelineFactory` failed to initialize a `ChannelPipeline`.

Annotation Types Summary
Annotation Type | Description
--- | ---
ChannelHandler.Sharable | Indicates that the same instance of the annotated `ChannelHandler` can be added to one or more `ChannelPipeline`s multiple times without a race condition.
ChannelPipelineCoverage | Deprecated Use the `ChannelHandler.Sharable` annotation instead.

## Package org.jboss.netty.channel Description

The core channel API which is asynchronous and event-driven abstraction of various transports such as a NIO Channel.