Apache Tomcat 6.0.41

org.apache.catalina.tribes.transport.nio
Class NioReceiver

java.lang.Object
  extended by org.apache.catalina.tribes.transport.ReceiverBase
      extended by org.apache.catalina.tribes.transport.nio.NioReceiver
All Implemented Interfaces:
java.lang.Runnable, ChannelReceiver, Heartbeat, ListenCallback, RxTaskPool.TaskCreator

public class NioReceiver
extends ReceiverBase
implements java.lang.Runnable, ChannelReceiver, ListenCallback

Author:
Filip Hanik

Field Summary
protected  java.util.LinkedList events
           
protected  long lastCheck
           
protected static Log log
           
protected  StringManager sm
          The string manager for this package.
 
Fields inherited from class org.apache.catalina.tribes.transport.ReceiverBase
OPTION_DIRECT_BUFFER
 
Constructor Summary
NioReceiver()
           
 
Method Summary
 void addEvent(java.lang.Runnable event)
           
protected  void bind()
           
static void cancelledKey(java.nio.channels.SelectionKey key)
           
 AbstractRxTask createRxTask()
           
 void events()
           
 java.lang.String getInfo()
          Return descriptive information about this implementation and the corresponding version number, in the format <description>/<version>.
protected  void listen()
          get data from channel and store in byte array send it to cluster
protected  void readDataFromSocket(java.nio.channels.SelectionKey key)
          Sample data handler method for a channel with data ready to read.
protected  void registerChannel(java.nio.channels.Selector selector, java.nio.channels.SelectableChannel channel, int ops, java.lang.Object attach)
          Register the given channel with the given selector for the given operations of interest
 void run()
          Start thread and listen
protected  void socketTimeouts()
           
 void start()
          start cluster receiver
 void stop()
          Stop listening for messages
protected  void stopListening()
          Close Selector.
 
Methods inherited from class org.apache.catalina.tribes.transport.ReceiverBase
bind, doListen, getAddress, getAutoBind, getBind, getDirect, getExecutor, getHost, getListener, getMaxTasks, getMaxThreads, getMessageListener, getMinTasks, getMinThreads, getOoBInline, getPort, getRxBufSize, getSecurePort, getSelectorTimeout, getSoKeepAlive, getSoLingerOn, getSoLingerTime, getSoReuseAddress, getSoTrafficClass, getTaskPool, getTcpListenAddress, getTcpListenPort, getTcpNoDelay, getTcpSelectorTimeout, getTcpThreadCount, getTimeout, getTxBufSize, getUseBufferPool, getWorkerThreadOptions, heartbeat, isListening, messageDataReceived, setAddress, setAutoBind, setBind, setDirect, setExecutor, setHost, setListen, setListener, setLog, setMaxTasks, setMaxThreads, setMessageListener, setMinTasks, setMinThreads, setOoBInline, setPool, setPort, setRxBufSize, setSecurePort, setSelectorTimeout, setSoKeepAlive, setSoLingerOn, setSoLingerTime, setSoReuseAddress, setSoTrafficClass, setTcpListenAddress, setTcpListenPort, setTcpNoDelay, setTcpSelectorTimeout, setTcpThreadCount, setTimeout, setTxBufSize, setUseBufferPool
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.catalina.tribes.ChannelReceiver
getHost, getMessageListener, getPort, getSecurePort, setMessageListener
 
Methods inherited from interface org.apache.catalina.tribes.Heartbeat
heartbeat
 
Methods inherited from interface org.apache.catalina.tribes.io.ListenCallback
messageDataReceived
 

Field Detail

log

protected static Log log

sm

protected StringManager sm
The string manager for this package.


events

protected java.util.LinkedList events

lastCheck

protected long lastCheck
Constructor Detail

NioReceiver

public NioReceiver()
Method Detail

getInfo

public java.lang.String getInfo()
Return descriptive information about this implementation and the corresponding version number, in the format <description>/<version>.


stop

public void stop()
Description copied from interface: ChannelReceiver
Stop listening for messages

Specified by:
stop in interface ChannelReceiver
Overrides:
stop in class ReceiverBase

start

public void start()
           throws java.io.IOException
start cluster receiver

Specified by:
start in interface ChannelReceiver
Overrides:
start in class ReceiverBase
Throws:
java.io.IOException
See Also:
ChannelReceiver.start()

createRxTask

public AbstractRxTask createRxTask()
Specified by:
createRxTask in interface RxTaskPool.TaskCreator

bind

protected void bind()
             throws java.io.IOException
Throws:
java.io.IOException

addEvent

public void addEvent(java.lang.Runnable event)

events

public void events()

cancelledKey

public static void cancelledKey(java.nio.channels.SelectionKey key)

socketTimeouts

protected void socketTimeouts()

listen

protected void listen()
               throws java.lang.Exception
get data from channel and store in byte array send it to cluster

Throws:
java.io.IOException
java.nio.channels.ClosedChannelException
java.lang.Exception

stopListening

protected void stopListening()
Close Selector.


registerChannel

protected void registerChannel(java.nio.channels.Selector selector,
                               java.nio.channels.SelectableChannel channel,
                               int ops,
                               java.lang.Object attach)
                        throws java.lang.Exception
Register the given channel with the given selector for the given operations of interest

Throws:
java.lang.Exception

run

public void run()
Start thread and listen

Specified by:
run in interface java.lang.Runnable

readDataFromSocket

protected void readDataFromSocket(java.nio.channels.SelectionKey key)
                           throws java.lang.Exception
Sample data handler method for a channel with data ready to read.

Parameters:
key - A SelectionKey object associated with a channel determined by the selector to be ready for reading. If the channel returns an EOF condition, it is closed here, which automatically invalidates the associated key. The selector will then de-register the channel on the next select call.
Throws:
java.lang.Exception

Apache Tomcat 6.0.41

Copyright © 2000-2014 Apache Software Foundation. All Rights Reserved.