Channel components are use to exchange messages between different address spaces.

We distinguish two Channel components : ChannelIn and ChannelOut.

This package contains various Channel implementationx. They are based on an abstraction of a socket. A socket provides an input, an output and a method to close it (see {@link org.objectweb.dream.channel.SocketState} interface).

Channel components use {@link org.objectweb.dream.message.codec.MessageCodec} interface to encode and decode message using input or output provided by a socket.

Channel components are composite components build as following :

TODO insert pictures

PushChannelOut are composed by :

PushChannelIn are composed by :