Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.activeio.net
Class NIOAsynchChannel

    java.lang.Object
      org.activeio.net.NIOBaseChannel
          org.activeio.net.NIOAsynchChannel

All Implemented Interfaces:
  AsynchChannel, Channel, Disposable, InputAsynchChannel, OutputChannel, Service, SocketMetadata

public final class NIOAsynchChannel
extends NIOBaseChannel
implements AsynchChannel

Version:
  $Revision$

Field Summary

Fields inherited from class org.activeio.net.NIOBaseChannel
`socket, socketChannel`

Fields inherited from interface org.activeio.Service
`NO_WAIT_TIMEOUT, WAIT_FOREVER_TIMEOUT`

Constructor Summary
`NIOAsynchChannel(java.nio.channels.SocketChannel socketChannel, boolean useDirect)`

Method Summary
`void` | `dispose()` This method should not throw any exceptions.
`void` | `flush()` Some channels may buffer data which may be sent down if flush() is called.
`AsynchChannelListener` | `getAsynchChannelListener()`
`void` | `setAsynchChannelListener(AsynchChannelListener channelListener)` Registers the `ChannelConsumer` that the protcol will use to deliver packets comming 'up' the channel.
`void` | `start()` Starts the channel.
`void` | `stop(long timeout)` Stops the channel.
`void` | `write(Packet packet)` Sends a packet down the channel towards the media.

Methods inherited from class org.activeio.net.NIOBaseChannel
`allocateBuffer, getInetAddress, getKeepAlive, getLocalAddress, getLocalPort, getLocalSocketAddress, getOOBInline, getPort, getReceiveBufferSize, getRemoteSocketAddress, getReuseAddress, getSendBufferSize, getSoLinger, getSoTimeout, getTcpNoDelay, getTrafficClass, isBound, isClosed, isConnected, narrow, setKeepAlive, setOOBInline, setReceiveBufferSize, setReuseAddress, setSendBufferSize, setSoLinger, setSoTimeout, setTcpNoDelay, setTrafficClass, toString`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface org.activeio.Channel
`narrow`

Constructor Detail

### NIOAsynchChannel

    public NIOAsynchChannel(java.nio.channels.SocketChannel socketChannel,
                            boolean useDirect)
                     throws java.io.IOException

Method Detail

### write

    public void write(Packet packet)
               throws java.io.IOException

  Description copied from interface: `OutputChannel`
  Sends a packet down the channel towards the media.

  Specified by:
    `write` in interface `OutputChannel`
  Parameters:
    `packet` -
  Throws:
    `java.io.IOException`

### flush

    public void flush()
               throws java.io.IOException

  Description copied from interface: `OutputChannel`
  Some channels may buffer data which may be sent down if flush() is called.

  Specified by:
    `flush` in interface `OutputChannel`
  Overrides:
    `flush` in class `NIOBaseChannel`
  Throws:
    `java.io.IOException`
  See Also:
    `org.activeio.Channel#flush()`

### setAsynchChannelListener

    public void setAsynchChannelListener(AsynchChannelListener channelListener)

  Description copied from interface: `InputAsynchChannel`
  Registers the `ChannelConsumer` that the protcol will use to deliver packets comming 'up' the channel.

  Specified by:
    `setAsynchChannelListener` in interface `InputAsynchChannel`

### getAsynchChannelListener

    public AsynchChannelListener getAsynchChannelListener()

  Specified by:
    `getAsynchChannelListener` in interface `InputAsynchChannel`
  Returns:
    the registered Packet consumer

### dispose

    public void dispose()

  Description copied from interface: `Disposable`
  This method should not throw any exceptions. Cleaning up a Disposable object should be easy of an end user therefore do not make him have to handle an Exception.

  Specified by:
    `dispose` in interface `Disposable`
  Overrides:
    `dispose` in class `NIOBaseChannel`

### start

    public void start()
               throws java.io.IOException

  Description copied from interface: `Service`
  Starts the channel. Once started, the channel is in the running state.

  Specified by:
    `start` in interface `Service`
  Throws:
    `java.io.IOException`

### stop

    public void stop(long timeout)
              throws java.io.IOException

  Description copied from interface: `Service`
  Stops the channel. Once stopped, the channel is in the stopped state.

  Specified by:
    `stop` in interface `Service`
  Parameters:
    `timeout` - The amount of time the channel is allowed to take to gracefully stop. If the timeout is exceeded, the channel should do a forcefull stop.
  Throws:
    `java.io.IOException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © -2005 The ActiveIO Project. All Rights Reserved.