org.jboss.remoting.transport.async
Class AsyncServerInvoker

java.lang.Object
  extended byorg.jboss.remoting.AbstractInvoker
      extended byorg.jboss.remoting.ServerInvoker
          extended byorg.jboss.remoting.transport.async.AsyncServerInvoker
All Implemented Interfaces:
Invoker

public class AsyncServerInvoker
extends ServerInvoker

AsyncServerInvoker allows the remoting system to start up the server side of the 'async' protocol.

Author:
Hiram Chirino

Field Summary
 
Fields inherited from class org.jboss.remoting.ServerInvoker
callbackHandlers, handlers, MAX_NUM_ONEWAY_THREADS
 
Fields inherited from class org.jboss.remoting.AbstractInvoker
classbyteloader, localServerLocator, locator, logExtra
 
Constructor Summary
AsyncServerInvoker(InvokerLocator locator)
           
 
Method Summary
 void dispatchDatagram(byte[] data, ChannelPool source)
          A ChannelPool will receive data from a Channel and if it is new request, it will forward it to the AsynchChannelServer for it to dispatch the work the appropriate subsystem.
 void dispatchRequest(byte[] data, ChannelPool source, int requestId)
          A ChannelPool will receive data from a Channel and if it is new request, it will forward it to the AsynchChannelServer for it to dispatch the work the appropriate subsystem.
protected  void finalize()
           
 boolean isTransportBiDirectional()
          returns true if the transport is bi-directional in nature, for example, SOAP in unidirectional and SOCKETs are bi-directional (unless behind a firewall for example).
 void start()
          subclasses should override to provide any specific start logic
 void stop()
          subclasses should override to provide any specific stop logic
 
Methods inherited from class org.jboss.remoting.ServerInvoker
addInvocationHandler, getInvocationHandler, getInvocationHandlers, getSupportedSubsystems, hasInvocationHandler, invoke, invoke, isStarted, postProcess, preProcess, removeInvocationHandler
 
Methods inherited from class org.jboss.remoting.AbstractInvoker
addClass, getClassBytes, getClientLocator, getLocator, loadClass, read, setClassLoader, setClientLocator, unmarshal
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

AsyncServerInvoker

public AsyncServerInvoker(InvokerLocator locator)
                   throws IOException
Method Detail

finalize

protected void finalize()
                 throws Throwable
Throws:
Throwable

start

public void start()
           throws IOException
Description copied from class: ServerInvoker
subclasses should override to provide any specific start logic

Overrides:
start in class ServerInvoker
Throws:
IOException

stop

public void stop()
Description copied from class: ServerInvoker
subclasses should override to provide any specific stop logic

Overrides:
stop in class ServerInvoker

isTransportBiDirectional

public boolean isTransportBiDirectional()
returns true if the transport is bi-directional in nature, for example, SOAP in unidirectional and SOCKETs are bi-directional (unless behind a firewall for example).

Specified by:
isTransportBiDirectional in class ServerInvoker
Returns:

dispatchDatagram

public void dispatchDatagram(byte[] data,
                             ChannelPool source)
                      throws InterruptedException
A ChannelPool will receive data from a Channel and if it is new request, it will forward it to the AsynchChannelServer for it to dispatch the work the appropriate subsystem. This a datagram that does not require a response message to be sent back.

Parameters:
data -
source - - the channel pool that the datagram came over.
Throws:
InterruptedException

dispatchRequest

public void dispatchRequest(byte[] data,
                            ChannelPool source,
                            int requestId)
                     throws InterruptedException
A ChannelPool will receive data from a Channel and if it is new request, it will forward it to the AsynchChannelServer for it to dispatch the work the appropriate subsystem. This a request and requires a response message to be sent back.

Parameters:
data -
source - - the channel pool that the request came over.
requestId - - the requestid of the message.
Throws:
InterruptedException


Copyright © 2002 JBoss Group, LLC. All Rights Reserved.