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.jboss.remoting
Class ServerInvoker

    java.lang.Object
      org.jboss.remoting.AbstractInvoker
          org.jboss.remoting.ServerInvoker

All Implemented Interfaces:
  Invoker, ServerInvokerMBean

Direct Known Subclasses:
  LocalServerInvoker, RMIServerInvoker, SocketServerInvoker, WebServerInvoker

    public abstract class ServerInvoker

extends AbstractInvoker
implements ServerInvokerMBean

ServerInvoker is the server-side part of a remote Invoker. The ServerInvoker implementation is responsible for calling transport, depending on how the protocol receives the incoming data.

Version:
  $Revision: 3505 $
Author:
  Jeff Haynie, Tom Elrod, Ovidiu Feodorov

Nested Class Summary
`static class` | `ServerInvoker.InvalidStateException`

Nested classes/interfaces inherited from class org.jboss.remoting.AbstractInvoker
`AbstractInvoker.CallbackLocatorHolder`

Field Summary
`static java.lang.String` | `BLOCKING` The value associated with BLOCKING_MODE that indicates that pull callbacks should be obtained in blocking mode;
`static java.lang.String` | `BLOCKING_MODE` The key to be used to determine if pull callbacks should be obtained in blocking or nonblocking mode
`static java.lang.String` | `BLOCKING_TIMEOUT` The key value to use to specify timeout for getting callbacks in blocking mode
`protected java.util.Map` | `callbackHandlers`
`static java.lang.String` | `CLIENT_CONNECT_ADDRESS_KEY` Key for setting the addres the client invoker should connecto to.
`static java.lang.String` | `CLIENT_CONNECT_PORT_KEY` key for setting the port the client invoker should connect to.
`static java.lang.String` | `CLIENT_LEASE_PERIOD` Key used for setting the amount of time (in milliseconds) that a client should renew its lease.
`protected java.util.Map` | `clientCallbackListener`
`protected ConnectionNotifier` | `connectionNotifier`
`static int` | `DEFAULT_BLOCKING_TIMEOUT` Default timeout for getting callbacks in blocking mode.
`static int` | `DEFAULT_CLIENT_LEASE_PERIOD` The default lease period for clients.
`static int` | `DEFAULT_TIMEOUT_PERIOD` The default timeout period for socket connections.
`protected java.util.Map` | `handlers`
`static java.lang.String` | `INVOKER_SESSION_ID`
`static int` | `MAX_NUM_ONEWAY_THREADS` The max number of worker threads to be used in the pool for processing one way calls on the server side.
`static java.lang.String` | `MAX_NUM_ONEWAY_THREADS_KEY` Key for the the maximum number of threads to be used in the thread pool for one way invocations (server side).
`static java.lang.String` | `MAX_ONEWAY_THREAD_POOL_QUEUE_SIZE` Key for the configuration map that determines the queue size for waiting asynchronous invocations.
`static java.lang.String` | `NONBLOCKING` The value associated with BLOCKING_MODE that indicates that pull callbacks should be obtained in nonblocking mode;
`static java.lang.String` | `ONEWAY_THREAD_POOL_CLASS_KEY` Key for setting the setting the oneway thread pool to use.
`static java.lang.String` | `REGISTER_CALLBACK_LISTENER` The key to use to specify if ServerInvokerCallbackHandlers should be registered as ConnectionListeners.
`protected boolean` | `registerCallbackListeners`
`static java.lang.String` | `SERVER_BIND_ADDRESS_KEY` Key for setting the address the server invoker should bind to.
`static java.lang.String` | `SERVER_BIND_PORT_KEY` Key for setting the port the server invoker should bind to.
`static java.lang.String` | `SERVER_SOCKET_FACTORY` Key for setting the value for the server socket factory to be used by the server invoker.
`protected javax.net.ServerSocketFactory` | `serverSocketFactory`
`protected org.jboss.remoting.ServerInvoker.CallbackContainer` | `singleCallbackContainer`
`protected ServerInvocationHandler` | `singleHandler`
`protected boolean` | `started`
`static java.lang.String` | `TIMEOUT` Key for setting the timeout value (in milliseconds) for socket connections.

Fields inherited from class org.jboss.remoting.AbstractInvoker
`classbyteloader, configuration, localServerLocators, locator, serializationType, socketFactory, socketFactoryCreatedFromSSLParameters`

Constructor Summary
`ServerInvoker(InvokerLocator locator)`
`ServerInvoker(InvokerLocator locator, java.util.Map configuration)`

Method Summary
`void` | `addConnectionListener(ConnectionListener listener)`
`ServerInvocationHandler` | `addInvocationHandler(java.lang.String subsystem, ServerInvocationHandler handler)` Add a server invocation handler for a particular subsystem.
`protected int` | `assignPort()`
`void` | `create()`
`protected javax.net.ServerSocketFactory` | `createServerSocketFactory()`
`void` | `destroy()` Destory the invoker permanently.
`java.lang.String` | `getClientConnectAddress()`
`int` | `getClientConnectPort()`
`java.util.Map` | `getConfiguration()` Gets the server invoker's transport specific configuration.
`java.lang.String` | `getDataType()` Will get the data type for the marshaller factory so know which marshaller to get to marshal the data.
`protected abstract java.lang.String` | `getDefaultDataType()`
`protected javax.net.ServerSocketFactory` | `getDefaultServerSocketFactory()` Gets the default server socket factory to use for the server invoker.
`ServerInvocationHandler` | `getInvocationHandler(java.lang.String subsystem)` Get a ServerInvocationHandler for a given subsystem type.
`ServerInvocationHandler[]` | `getInvocationHandlers()`
`Lease` | `getLease(java.lang.String sessionId)`
`long` | `getLeasePeriod()` Gets the amount of time (in milliseconds) that a client should renew its lease.
`int` | `getMaxNumberOfOnewayThreads()` Gets the maximum number of thread to be used in the thread pool for one way invocations (server side).
`java.lang.String` | `getMBeanObjectName()`
`javax.management.MBeanServer` | `getMBeanServer()`
`org.jboss.util.threadpool.ThreadPool` | `getOnewayThreadPool()` Gets the oneway thread pool to use.
`java.lang.String` | `getServerBindAddress()`
`int` | `getServerBindPort()`
`javax.net.ServerSocketFactory` | `getServerSocketFactory()`
`java.lang.String[]` | `getSupportedSubsystems()`
`int` | `getTimeout()` The timeout (in milliseconds) used for the socket connection.
`protected java.lang.Object` | `handleInternalInvocation(InternalInvocation param, InvocationRequest invocation, ServerInvocationHandler handler)` Handles both internal and external invocations (internal meaning only to be used within remoting and external for ones that go to handlers.
`boolean` | `hasInvocationHandler(java.lang.String subsystem)`
`java.lang.Object` | `invoke(InvocationRequest invocation)` Processes invocation request depending on the invocation type (internal, name based, oneway, etc).
`java.lang.Object` | `invoke(java.lang.Object invoke)`
`boolean` | `isLeaseActivated()`
`boolean` | `isRegisterCallbackListeners()`
`boolean` | `isStarted()` return true if the server invoker is started, false if not
`protected boolean` | `justNeedsSSLClientMode(java.util.Map configuration)`
`protected void` | `postProcess(java.lang.String sessionId, java.lang.Object param, java.util.Map payload, InvokerLocator locator)` Called after an invocation.
`protected void` | `preProcess(java.lang.String sessionId, ClassBytes arg, java.util.Map payload, InvokerLocator locator)` Called prior to an invocation.
`void` | `removeCallbackListener(java.lang.String subsystem, InvokerCallbackHandler callbackHandler)`
`void` | `removeConnectionListener(ConnectionListener listener)`
`ServerInvocationHandler` | `removeInvocationHandler(java.lang.String subsystem)` Remove a subsystem invocation handler.
`void` | `setClientConnectAddress(java.lang.String clientConnectAddress)` This method should only be called by the service controller when this invoker is specified within the Connector configuration of a service xml.
`void` | `setClientConnectPort(int clientConnectPort)`
`void` | `setConfiguration(java.util.Map configuration)` Sets the server invoker's transport specific configuration.
`void` | `setLeasePeriod(long leasePeriodValue)` Sets the amount of time (in milliseconds) that a client should renew its lease.
`void` | `setMaxNumberOfOnewayThreads(int numOfThreads)` Sets the maximum number of thread to be used in the thread pool for one way invocations (server side).
`void` | `setMBeanServer(javax.management.MBeanServer server)`
`void` | `setOnewayThreadPool(org.jboss.util.threadpool.ThreadPool pool)` Sets the oneway thread pool to use.
`void` | `setRegisterCallbackListeners(boolean registerCallbackListeners)`
`void` | `setServerSocketFactory(javax.net.ServerSocketFactory serverSocketFactory)`
`void` | `setTimeout(int timeout)` Sets timeout (in millseconds) to be used for the socket connection.
`protected void` | `setup()`
`void` | `start()` Subclasses should override to provide any specific start logic.
`void` | `stop()` Subclasses should override to provide any specific stop logic.
`protected javax.net.ServerSocketFactory` | `wrapServerSocketFactory(javax.net.ServerSocketFactory ssf, java.util.Map config)`

Methods inherited from class org.jboss.remoting.AbstractInvoker
`addClientLocator, createSocketFactory, getClassLoader, getClientLocator, getClientLocators, getLocator, getSerializationType, getSocketFactory, isCompleteSocketFactory, isSocketFactoryCreatedFromSSLParameters, needsCustomSSLConfiguration, setClassLoader, setSerializationType, setSocketFactory, wrapSocketFactory`

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

Methods inherited from interface org.jboss.remoting.ServerInvokerMBean
`isTransportBiDirectional`

Field Detail

### MAX_NUM_ONEWAY_THREADS_KEY

    public static final java.lang.String MAX_NUM_ONEWAY_THREADS_KEY

  Key for the the maximum number of threads to be used in the thread pool for one way invocations (server side). This property is only used when the default oneway thread pool is used.

  See Also:
    Constant Field Values

### ONEWAY_THREAD_POOL_CLASS_KEY

    public static final java.lang.String ONEWAY_THREAD_POOL_CLASS_KEY

  Key for setting the setting the oneway thread pool to use. The value used with this key will first be checked to see if is a JMX ObjectName and if so, try to look up associated mbean for the ObjectName given and cast to type org.jboss.util.threadpool.ThreadPoolMBean (via MBeanServerInvocationHandler.newProxyInstance()). If the value is not a JMX ObjectName, will assume is a fully qualified classname and load the coresponding class and create a new instance of it (which will require it to have a void constructor). The newly created instance will then be cast to type of org.jboss.util.threadpool.ThreadPool.

  See Also:
    Constant Field Values

### SERVER_BIND_ADDRESS_KEY

    public static final java.lang.String SERVER_BIND_ADDRESS_KEY

  Key for setting the address the server invoker should bind to. The value can be either host name or IP.

  See Also:
    Constant Field Values

### CLIENT_CONNECT_ADDRESS_KEY

    public static final java.lang.String CLIENT_CONNECT_ADDRESS_KEY

  Key for setting the addres the client invoker should connecto to. This should be used when client will be connecting to server from outside the server's network and the external address is different from that of the internal address the server invoker will bind to (e.g. using NAT to expose different external address). This will mostly be useful when client uses remoting detection to discover remoting servers. The value can be either host name or IP.

  See Also:
    Constant Field Values

### SERVER_BIND_PORT_KEY

    public static final java.lang.String SERVER_BIND_PORT_KEY

  Key for setting the port the server invoker should bind to. If the value supplied is less than or equal to zero, the server invoker will randomly choose a free port to use.

  See Also:
    Constant Field Values

### CLIENT_CONNECT_PORT_KEY

    public static final java.lang.String CLIENT_CONNECT_PORT_KEY

  key for setting the port the client invoker should connect to. This should be used when client will be connecting to server from outside the server's network and the external port is different from that of the internal port the server invoker will bind to (e.g. using NAT to expose different port routing). This will be mostly useful when client uses remoting detection to discover remoting servers.

  See Also:
    Constant Field Values

### CLIENT_LEASE_PERIOD

    public static final java.lang.String CLIENT_LEASE_PERIOD

  Key used for setting the amount of time (in milliseconds) that a client should renew its lease. If this value is not set, the default of five seconds (see DEFAULT_CLIENT_LEASE_PERIOD), will be used. This value will also be what is given to the client when it initially querys server for leasing information.

  See Also:
    Constant Field Values

### TIMEOUT

    public static final java.lang.String TIMEOUT

  Key for setting the timeout value (in milliseconds) for socket connections.

  See Also:
    Constant Field Values

### SERVER_SOCKET_FACTORY

    public static final java.lang.String SERVER_SOCKET_FACTORY

  Key for setting the value for the server socket factory to be used by the server invoker. The value can be either a JMX Object name, in which case will lookup the mbean and create a proxy to it with type of org.jboss.remoting.security.ServerSocketFactoryMBean (via MBeanServerInvocationHandler.newProxyInstance()). If not a JMX ObjectName, will assume is the fully qualified classname to the implementation to be used and will load the class, create a new instance of it (which requires it to have a void constructor). The instance will then be cast to type javax.net.ServerSocketFactory.

  See Also:
    Constant Field Values

### MAX_NUM_ONEWAY_THREADS

    public static final int MAX_NUM_ONEWAY_THREADS

  The max number of worker threads to be used in the pool for processing one way calls on the server side. Value is is 100.

  See Also:
    Constant Field Values

### MAX_ONEWAY_THREAD_POOL_QUEUE_SIZE

    public static final java.lang.String MAX_ONEWAY_THREAD_POOL_QUEUE_SIZE

  Key for the configuration map that determines the queue size for waiting asynchronous invocations.

  See Also:
    Constant Field Values

### DEFAULT_CLIENT_LEASE_PERIOD

    public static final int DEFAULT_CLIENT_LEASE_PERIOD

  The default lease period for clients. This is the number of milliseconds that a client will be required to renew their lease with the server. The default value is 5 seconds.

  See Also:
    Constant Field Values

### DEFAULT_TIMEOUT_PERIOD

    public static final int DEFAULT_TIMEOUT_PERIOD

  The default timeout period for socket connections. The default value is 60000 milliseconds.

  See Also:
    Constant Field Values

### BLOCKING_MODE

    public static final java.lang.String BLOCKING_MODE

  The key to be used to determine if pull callbacks should be obtained in blocking or nonblocking mode

  See Also:
    Constant Field Values

### BLOCKING_TIMEOUT

    public static final java.lang.String BLOCKING_TIMEOUT

  The key value to use to specify timeout for getting callbacks in blocking mode

  See Also:
    Constant Field Values

### BLOCKING

    public static final java.lang.String BLOCKING

  The value associated with BLOCKING_MODE that indicates that pull callbacks should be obtained in blocking mode;

  See Also:
    Constant Field Values

### NONBLOCKING

    public static final java.lang.String NONBLOCKING

  The value associated with BLOCKING_MODE that indicates that pull callbacks should be obtained in nonblocking mode;

  See Also:
    Constant Field Values

### DEFAULT_BLOCKING_TIMEOUT

    public static final int DEFAULT_BLOCKING_TIMEOUT

  Default timeout for getting callbacks in blocking mode. Default is 5000 milliseconds.

  See Also:
    Constant Field Values

### REGISTER_CALLBACK_LISTENER

    public static final java.lang.String REGISTER_CALLBACK_LISTENER

  The key to use to specify if ServerInvokerCallbackHandlers should be registered as ConnectionListeners.

  See Also:
    Constant Field Values

### INVOKER_SESSION_ID

    public static final java.lang.String INVOKER_SESSION_ID

See Also:
  Constant Field Values

### handlers

    protected java.util.Map handlers

### singleHandler

    protected volatile ServerInvocationHandler singleHandler

### singleCallbackContainer

    protected volatile org.jboss.remoting.ServerInvoker.CallbackContainer singleCallbackContainer

### callbackHandlers

    protected java.util.Map callbackHandlers

### clientCallbackListener

    protected java.util.Map clientCallbackListener

### started

    protected boolean started

### connectionNotifier

    protected ConnectionNotifier connectionNotifier

### serverSocketFactory

    protected javax.net.ServerSocketFactory serverSocketFactory

### registerCallbackListeners

    protected boolean registerCallbackListeners

Constructor Detail

### ServerInvoker

    public ServerInvoker(InvokerLocator locator)

### ServerInvoker

    public ServerInvoker(InvokerLocator locator,
                         java.util.Map configuration)

Method Detail

### setServerSocketFactory

    public void setServerSocketFactory(javax.net.ServerSocketFactory serverSocketFactory)

### getServerSocketFactory

    public javax.net.ServerSocketFactory getServerSocketFactory()

### setTimeout

    public void setTimeout(int timeout)

  Sets timeout (in millseconds) to be used for the socket connection.

  Specified by:
    `setTimeout` in interface `ServerInvokerMBean`

### getTimeout

    public int getTimeout()

  The timeout (in milliseconds) used for the socket connection.

  Specified by:
    `getTimeout` in interface `ServerInvokerMBean`

### isLeaseActivated

    public boolean isLeaseActivated()

### addConnectionListener

    public void addConnectionListener(ConnectionListener listener)

### removeConnectionListener

    public void removeConnectionListener(ConnectionListener listener)

### setLeasePeriod

    public void setLeasePeriod(long leasePeriodValue)

  Sets the amount of time (in milliseconds) that a client should renew its lease. If this value is not set, the default of five seconds (see DEFAULT_CLIENT_LEASE_PERIOD), will be used. This value will also be what is given to the client when it initially querys server for leasing information. If set after create() method called, this value will override value set by CLIENT_LEASE_PERIOD key.

### getLease

    public Lease getLease(java.lang.String sessionId)

### getLeasePeriod

    public long getLeasePeriod()

  Gets the amount of time (in milliseconds) that a client should renew its lease.

### getClientConnectAddress

    public java.lang.String getClientConnectAddress()

  Specified by:
    `getClientConnectAddress` in interface `ServerInvokerMBean`

### getClientConnectPort

    public int getClientConnectPort()

  Specified by:
    `getClientConnectPort` in interface `ServerInvokerMBean`

### setClientConnectPort

    public void setClientConnectPort(int clientConnectPort)

  Specified by:
    `setClientConnectPort` in interface `ServerInvokerMBean`

### setClientConnectAddress

    public void setClientConnectAddress(java.lang.String clientConnectAddress)

  This method should only be called by the service controller when this invoker is specified within the Connector configuration of a service xml. Calling this directly will have no effect, as will be used in building the locator uri that is published for detection and this happens when the invoker is first created and started (after that, no one will be aware of a change).

  Specified by:
    `setClientConnectAddress` in interface `ServerInvokerMBean`

### getServerBindAddress

    public java.lang.String getServerBindAddress()

  Specified by:
    `getServerBindAddress` in interface `ServerInvokerMBean`

### getServerBindPort

    public int getServerBindPort()

  Specified by:
    `getServerBindPort` in interface `ServerInvokerMBean`

### setMaxNumberOfOnewayThreads

    public void setMaxNumberOfOnewayThreads(int numOfThreads)

  Sets the maximum number of thread to be used in the thread pool for one way invocations (server side). This property is only used when the default oneway thread pool is used. If set after create() method called, this value will override value set by MAX_NUM_ONEWAY_THREADS_KEY key.

### getMaxNumberOfOnewayThreads

    public int getMaxNumberOfOnewayThreads()

  Gets the maximum number of thread to be used in the thread pool for one way invocations (server side).

### getOnewayThreadPool

    public org.jboss.util.threadpool.ThreadPool getOnewayThreadPool()

  Gets the oneway thread pool to use.

### setOnewayThreadPool

    public void setOnewayThreadPool(org.jboss.util.threadpool.ThreadPool pool)

  Sets the oneway thread pool to use.

### getMBeanServer

    public javax.management.MBeanServer getMBeanServer()

### setMBeanServer

    public void setMBeanServer(javax.management.MBeanServer server)

### isRegisterCallbackListeners

    public boolean isRegisterCallbackListeners()

### setRegisterCallbackListeners

    public void setRegisterCallbackListeners(boolean registerCallbackListeners)

### hasInvocationHandler

    public boolean hasInvocationHandler(java.lang.String subsystem)

  Returns:
    true if a server invocation handler has been registered for this subsystem.

### getSupportedSubsystems

    public java.lang.String[] getSupportedSubsystems()

  Returns:
    an array of keys for each subsystem this invoker can handle.

### getInvocationHandlers

    public ServerInvocationHandler[] getInvocationHandlers()

  Returns:
    an array of the server invocation handlers.

### addInvocationHandler

    public ServerInvocationHandler addInvocationHandler(java.lang.String subsystem,
                                                        ServerInvocationHandler handler)

  Add a server invocation handler for a particular subsystem. Typically, subsystems are defined in org.jboss.remoting.Subsystem, however, this can be any string that the caller knows about.

  Returns:
    previous ServerInvocationHandler with the same sybsystem value (case insensitive) or null if a previous one did not exist.

### removeInvocationHandler

    public ServerInvocationHandler removeInvocationHandler(java.lang.String subsystem)

  Remove a subsystem invocation handler.

### getInvocationHandler

    public ServerInvocationHandler getInvocationHandler(java.lang.String subsystem)

  Get a ServerInvocationHandler for a given subsystem type.

### invoke

    public java.lang.Object invoke(java.lang.Object invoke)
                            throws java.io.IOException

  Throws:
    `java.io.IOException`

### invoke

    public java.lang.Object invoke(InvocationRequest invocation)
                            throws java.lang.Throwable

  Processes invocation request depending on the invocation type (internal, name based, oneway, etc). Can be called on directly when client and server are local to one another (by-passing serialization).

  Throws:
    `java.lang.Throwable`

### getDataType

    public java.lang.String getDataType()

  Will get the data type for the marshaller factory so know which marshaller to get to marshal the data. Will first check the locator uri for a 'datatype' parameter and take that value if it exists. Otherwise, will use the default datatype for the client invoker, based on transport.

  Specified by:
    `getDataType` in interface `ServerInvokerMBean`
  Returns:

### create

    public void create()

  Specified by:
    `create` in interface `ServerInvokerMBean`

### start

    public void start()
               throws java.io.IOException

  Subclasses should override to provide any specific start logic.

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

### isStarted

    public boolean isStarted()

  Description copied from interface: `ServerInvokerMBean`
  return true if the server invoker is started, false if not

  Specified by:
    `isStarted` in interface `ServerInvokerMBean`
  Returns:
    true if the server invoker is started, false if not.

### stop

    public void stop()

  Subclasses should override to provide any specific stop logic.

  Specified by:
    `stop` in interface `ServerInvokerMBean`

### destroy

    public void destroy()

  Destory the invoker permanently.

  Specified by:
    `destroy` in interface `ServerInvokerMBean`

### setConfiguration

    public void setConfiguration(java.util.Map configuration)

  Sets the server invoker's transport specific configuration. Will need to set before calling start() method (or at least stop() and start() again) before configurations will take affect.

  Specified by:
    `setConfiguration` in interface `ServerInvokerMBean`

### getConfiguration

    public java.util.Map getConfiguration()

  Gets the server invoker's transport specific configuration.

  Specified by:
    `getConfiguration` in interface `ServerInvokerMBean`
  Returns:

### removeCallbackListener

    public void removeCallbackListener(java.lang.String subsystem,
                                       InvokerCallbackHandler callbackHandler)

### getMBeanObjectName

    public java.lang.String getMBeanObjectName()

  Returns:
    the String for the object name to be used for the invoker.

### getDefaultDataType

    protected abstract java.lang.String getDefaultDataType()

### setup

    protected void setup()
                  throws java.lang.Exception

  Throws:
    `java.lang.Exception`

### assignPort

    protected int assignPort()
                      throws java.io.IOException

  Throws:
    `java.io.IOException`

### createServerSocketFactory

    protected javax.net.ServerSocketFactory createServerSocketFactory()
                                                               throws java.io.IOException

  Throws:
    `java.io.IOException`

### justNeedsSSLClientMode

    protected boolean justNeedsSSLClientMode(java.util.Map configuration)

### getDefaultServerSocketFactory

    protected javax.net.ServerSocketFactory getDefaultServerSocketFactory()
                                                                   throws java.io.IOException

  Gets the default server socket factory to use for the server invoker. The intention is this method will be overridden by sub-classes for their specific defaults.

  Throws:
    `java.io.IOException`

### wrapServerSocketFactory

    protected javax.net.ServerSocketFactory wrapServerSocketFactory(javax.net.ServerSocketFactory ssf,
                                                                    java.util.Map config)

### handleInternalInvocation

    protected java.lang.Object handleInternalInvocation(InternalInvocation param,
                                                        InvocationRequest invocation,
                                                        ServerInvocationHandler handler)
                                                 throws java.lang.Throwable

  Handles both internal and external invocations (internal meaning only to be used within remoting and external for ones that go to handlers.

  Throws:
    `java.lang.Throwable`

### preProcess

    protected void preProcess(java.lang.String sessionId,
                              ClassBytes arg,
                              java.util.Map payload,
                              InvokerLocator locator)

  Called prior to an invocation. TODO is sending in the arg appropriate?

### postProcess

    protected void postProcess(java.lang.String sessionId,
                               java.lang.Object param,
                               java.util.Map payload,
                               InvokerLocator locator)

  Called after an invocation. TODO is sending in the arg appropriate?

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 ? 1998-2005 JBoss Inc . All Rights Reserved.