org.jboss.remoting.transport.bisocket
Class BisocketServerInvoker

java.lang.Object
  extended by org.jboss.remoting.AbstractInvoker
      extended by org.jboss.remoting.ServerInvoker
          extended by org.jboss.remoting.transport.socket.SocketServerInvoker
              extended by org.jboss.remoting.transport.bisocket.BisocketServerInvoker
All Implemented Interfaces:
java.lang.Runnable, Invoker, ServerInvokerMBean, SocketServerInvokerMBean
Direct Known Subclasses:
SSLBisocketServerInvoker

public class BisocketServerInvoker
extends SocketServerInvoker

Version:
$Revision: 5194 $

Copyright Nov 23, 2006

Author:
Ron Sigal

Nested Class Summary
 
Nested classes/interfaces inherited from class org.jboss.remoting.transport.socket.SocketServerInvoker
SocketServerInvoker.IdleTimerTask, SocketServerInvoker.ServerSocketRefresh
 
Nested classes/interfaces inherited from class org.jboss.remoting.ServerInvoker
ServerInvoker.InvalidStateException
 
Nested classes/interfaces inherited from class org.jboss.remoting.AbstractInvoker
AbstractInvoker.CallbackLocatorHolder
 
Field Summary
protected  boolean isCallbackServer
           
protected  int secondaryBindPort
           
protected  int secondaryConnectPort
           
 
Fields inherited from class org.jboss.remoting.transport.socket.SocketServerInvoker
acceptThreads, backlog, CHECK_CONNECTION_KEY, clientpool, idleTimeout, idleTimerTask, MAX_POOL_SIZE_DEFAULT, maxPoolSize, newServerSocketFactory, numAcceptThreads, reuseAddress, running, SERVER_SOCKET_CLASS_FLAG, serverSocket, serverSocketClass, serverSocketFactoryLock, threadpool
 
Fields inherited from class org.jboss.remoting.ServerInvoker
BLOCKING, BLOCKING_MODE, BLOCKING_TIMEOUT, callbackHandlers, CLIENT_CONNECT_ADDRESS_KEY, CLIENT_CONNECT_PORT_KEY, CLIENT_LEASE_PERIOD, clientCallbackListener, CONNECTION_LISTENER, connectionNotifier, DEFAULT_BLOCKING_TIMEOUT, DEFAULT_CLIENT_LEASE_PERIOD, DEFAULT_TIMEOUT_PERIOD, handlers, INVOKER_SESSION_ID, MAX_NUM_ONEWAY_THREADS, MAX_NUM_ONEWAY_THREADS_KEY, MAX_ONEWAY_THREAD_POOL_QUEUE_SIZE, NONBLOCKING, ONEWAY_THREAD_POOL_CLASS_KEY, REGISTER_CALLBACK_LISTENER, registerCallbackListeners, SERVER_BIND_ADDRESS_KEY, SERVER_BIND_PORT_KEY, SERVER_SOCKET_FACTORY, serverSocketFactory, singleCallbackContainer, singleHandler, started, TIMEOUT, useClientConnectionIdentity
 
Fields inherited from class org.jboss.remoting.AbstractInvoker
classbyteloader, configuration, localServerLocators, locator, passConfigMapToMarshalFactory, serializationType, socketFactory, socketFactoryCreatedFromSSLParameters
 
Constructor Summary
BisocketServerInvoker(InvokerLocator locator)
           
BisocketServerInvoker(InvokerLocator locator, java.util.Map configuration)
           
 
Method Summary
protected  void checkSecondaryServerSocketWrapper()
           
protected  void checkSocketFactoryWrapper()
           
protected  void cleanup()
           
 void createControlConnection(java.lang.String listenerId, boolean firstConnection)
           
 void destroyControlConnection(java.lang.String listenerId)
           
static BisocketServerInvoker getBisocketServerInvoker(java.lang.String listenerId)
           
 int getControlConnectionRestarts()
           
 int getPingFrequency()
           
 int getPingWindowFactor()
           
 int getSecondaryBindPort()
           
 int getSecondaryConnectPort()
           
protected  InvokerLocator getSecondaryLocator()
           
protected  java.net.ServerSocket getServerSocket()
           
 int getSocketCreationRetries()
           
protected  java.lang.Object handleInternalInvocation(InternalInvocation ii, InvocationRequest ir, 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 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 setControlConnectionRestarts(int controlConnectionRestarts)
           
 void setPingFrequency(int pingFrequency)
           
 void setPingWindowFactor(int pingWindowFactor)
           
 void setSecondaryBindPort(int secondaryPort)
           
 void setSecondaryConnectPort(int secondaryConnectPort)
           
 void setSocketCreationRetries(int socketCreationRetries)
           
protected  void setup()
           
 void start()
          Starts the invoker.
 
Methods inherited from class org.jboss.remoting.transport.socket.SocketServerInvoker
createServerSocket, destroy, finalize, getBacklog, getCurrentClientPoolSize, getCurrentThreadPoolSize, getDefaultDataType, getIdleTimeout, getMaxPoolSize, getNumAcceptThreads, getReuseAddress, getThreadName, processInvocation, refreshServerSocket, run, setBacklog, setIdleTimeout, setMaxPoolSize, setNewServerSocketFactory, setNumAcceptThreads, setReuseAddress, stop, toString
 
Methods inherited from class org.jboss.remoting.ServerInvoker
addConnectionListener, addInvocationHandler, assignPort, create, createServerSocketFactory, findInvocationHandler, getClientConnectAddress, getClientConnectPort, getConfiguration, getConnectionNotifier, getDataType, getDefaultServerSocketFactory, getInvocationHandler, getInvocationHandlers, getLease, getLeasePeriod, getMaxNumberOfOnewayThreads, getMBeanObjectName, getMBeanServer, getOnewayThreadPool, getServerBindAddress, getServerBindPort, getServerSocketFactory, getSupportedSubsystems, getTimeout, hasInvocationHandler, invoke, invoke, isLeaseActivated, isRegisterCallbackListeners, isStarted, isUseClientConnectionIdentity, justNeedsSSLClientMode, postProcess, preProcess, removeCallbackHandler, removeCallbackListener, removeConnectionListener, removeInvocationHandler, setClientConnectAddress, setClientConnectPort, setConfiguration, setConnectionListener, setLeasePeriod, setMaxNumberOfOnewayThreads, setMBeanServer, setOnewayThreadPool, setRegisterCallbackListeners, setServerSocketFactory, setTimeout, setUseClientConnectionIdentity, shutdownCallbackHandler, wrapServerSocketFactory
 
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, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.jboss.remoting.transport.socket.SocketServerInvokerMBean
getServerBindPort
 
Methods inherited from interface org.jboss.remoting.ServerInvokerMBean
create, getClientConnectAddress, getClientConnectPort, getConfiguration, getDataType, getServerBindAddress, getTimeout, isStarted, setClientConnectAddress, setClientConnectPort, setConfiguration, setTimeout
 

Field Detail

isCallbackServer

protected boolean isCallbackServer

secondaryBindPort

protected int secondaryBindPort

secondaryConnectPort

protected int secondaryConnectPort
Constructor Detail

BisocketServerInvoker

public BisocketServerInvoker(InvokerLocator locator)

BisocketServerInvoker

public BisocketServerInvoker(InvokerLocator locator,
                             java.util.Map configuration)
Method Detail

getBisocketServerInvoker

public static BisocketServerInvoker getBisocketServerInvoker(java.lang.String listenerId)

start

public void start()
           throws java.io.IOException
Description copied from class: SocketServerInvoker
Starts the invoker.

Specified by:
start in interface ServerInvokerMBean
Specified by:
start in interface SocketServerInvokerMBean
Overrides:
start in class SocketServerInvoker
Throws:
java.io.IOException

isTransportBiDirectional

public boolean isTransportBiDirectional()
Description copied from class: SocketServerInvoker
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 interface ServerInvokerMBean
Overrides:
isTransportBiDirectional in class SocketServerInvoker
Returns:

createControlConnection

public void createControlConnection(java.lang.String listenerId,
                                    boolean firstConnection)
                             throws java.io.IOException
Throws:
java.io.IOException

destroyControlConnection

public void destroyControlConnection(java.lang.String listenerId)

getControlConnectionRestarts

public int getControlConnectionRestarts()

setControlConnectionRestarts

public void setControlConnectionRestarts(int controlConnectionRestarts)

getPingFrequency

public int getPingFrequency()

setPingFrequency

public void setPingFrequency(int pingFrequency)

getPingWindowFactor

public int getPingWindowFactor()

setPingWindowFactor

public void setPingWindowFactor(int pingWindowFactor)

getSecondaryBindPort

public int getSecondaryBindPort()

setSecondaryBindPort

public void setSecondaryBindPort(int secondaryPort)

getSecondaryConnectPort

public int getSecondaryConnectPort()

setSecondaryConnectPort

public void setSecondaryConnectPort(int secondaryConnectPort)

getSocketCreationRetries

public int getSocketCreationRetries()

setSocketCreationRetries

public void setSocketCreationRetries(int socketCreationRetries)

setup

protected void setup()
              throws java.lang.Exception
Overrides:
setup in class SocketServerInvoker
Throws:
java.lang.Exception

cleanup

protected void cleanup()
Overrides:
cleanup in class SocketServerInvoker

getSecondaryLocator

protected InvokerLocator getSecondaryLocator()

getServerSocket

protected java.net.ServerSocket getServerSocket()

checkSocketFactoryWrapper

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

checkSecondaryServerSocketWrapper

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

handleInternalInvocation

protected java.lang.Object handleInternalInvocation(InternalInvocation ii,
                                                    InvocationRequest ir,
                                                    ServerInvocationHandler handler)
                                             throws java.lang.Throwable
Description copied from class: ServerInvoker
Handles both internal and external invocations (internal meaning only to be used within remoting and external for ones that go to handlers.

Overrides:
handleInternalInvocation in class ServerInvoker
Throws:
java.lang.Throwable


Copyright © 1998-2005 JBoss Inc . All Rights Reserved.