org.apache.geronimo.remoting.transport.async
Class AbstractServer

java.lang.Object
  extended byorg.apache.geronimo.proxy.SimpleComponent
      extended byorg.apache.geronimo.proxy.SimpleContainer
          extended byorg.apache.geronimo.remoting.transport.async.AbstractServer
All Implemented Interfaces:
org.apache.geronimo.core.service.Component, org.apache.geronimo.core.service.Container, Serializable, TransportServer
Direct Known Subclasses:
BackChannelServer, BlockingServer, NonBlockingServer

public abstract class AbstractServer
extends org.apache.geronimo.proxy.SimpleContainer
implements TransportServer

Provides a Blocking implemenation of the AsynchChannelServer interface. Sets up a blocking ServerSocket to accept blocking client connections.

Version:
$Revision: 1.3 $ $Date: 2004/03/10 09:59:20 $
See Also:
Serialized Form

Field Summary
 long CONNECTION_TIMEOUT
          The amount of time that must pass before an idle connection is closed.
 
Constructor Summary
AbstractServer()
           
 
Method Summary
 void dispose()
          Rleases all resources that were obtained during the life of the server.
 ChannelPool getChannelPool(URI uri)
          Keeps a map of uri->ChannelPool objects.
abstract  Router getNextRouter()
           
 void start()
          Enables the server to start accepting new client requests.
 void stop()
          Stops the server from accepting new client requests.
 
Methods inherited from class org.apache.geronimo.proxy.SimpleContainer
addComponent, getComponents, removeComponent
 
Methods inherited from class org.apache.geronimo.proxy.SimpleComponent
getContainer, getObjectName, setContainer, setObjectName
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.geronimo.remoting.transport.TransportServer
bind, getClientConnectURI
 
Methods inherited from interface org.apache.geronimo.core.service.Component
getContainer, setContainer
 

Field Detail

CONNECTION_TIMEOUT

public final long CONNECTION_TIMEOUT
The amount of time that must pass before an idle connection is closed.

Constructor Detail

AbstractServer

public AbstractServer()
Method Detail

getChannelPool

public ChannelPool getChannelPool(URI uri)
Keeps a map of uri->ChannelPool objects. Creates the ChannelPool if it the first time you access the uri. TODO: think of way to remove ChannelPool objects that are not being used.


dispose

public void dispose()
             throws Exception
Description copied from interface: TransportServer
Rleases all resources that were obtained during the life of the server. Once disposed, the sever instance cannot be used again.

Specified by:
dispose in interface TransportServer
Throws:
Exception
See Also:
TransportServer.dispose()

getNextRouter

public abstract Router getNextRouter()

start

public void start()
           throws Exception
Description copied from interface: TransportServer
Enables the server to start accepting new client requests.

Specified by:
start in interface TransportServer
Throws:
Exception
See Also:
TransportServer.start()

stop

public void stop()
          throws Exception
Description copied from interface: TransportServer
Stops the server from accepting new client requests. start() may be called at a later time to start processing requests again.

Specified by:
stop in interface TransportServer
Throws:
Exception
See Also:
TransportServer.stop()


Copyright © 2003-2005 Apache Software Foundation. All Rights Reserved.