org.jboss.remoting
Class InvokerRegistry

java.lang.Object
  extended byorg.jboss.remoting.InvokerRegistry

public class InvokerRegistry
extends Object

InvokerRegistry is a simple registery for creating client and server side Invoker implementations, getting information about the invokers and register as a invoker creator for one or more specific transports.

Version:
$Revision: 1.20 $
Author:
Jeff Haynie, Tom Elrod

Constructor Summary
InvokerRegistry()
           
 
Method Summary
static ClientInvoker createClientInvoker(InvokerLocator locator)
          create a ClientInvoker instance, using the specific InvokerLocator, which is just a client-side invoker to a remote server
static ServerInvoker createServerInvoker(InvokerLocator locator)
          create a ServerInvoker instance, using the specific Invoker locator data and an implementation of the ServerInvocationHandler interface.
static ServerInvoker createServerInvoker(InvokerLocator locator, Map configuration)
          create a ServerInvoker instance, using the specific Invoker locator data and an implementation of the ServerInvocationHandler interface along with
static void destroyClientInvoker(InvokerLocator locator)
          called to destroy any cached RemoteClientInvoker copies inside the registry.
static ClientInvoker[] getClientInvokers()
          return an array of ClientInvokers that are connected
static String[] getRegisteredInvokerTransports()
          return an array of String of the registered transports
static InvokerLocator[] getRegisteredServerLocators()
          return an array of InvokerLocators that are local to this VM (server invokers)
static ServerInvoker[] getServerInvokers()
          return an array of ServerInvokers that are connected
static InvokerLocator getSuitableServerLocatorForRemote(InvokerLocator remote)
          return a suitable local server invoker that can service the remote invoker locator based on a compatible transport
static boolean isClientInvokerRegistered(InvokerLocator locator)
          returns true if the client invoker is registered in the local JVM for a given locator
static boolean isServerInvokerRegistered(InvokerLocator locator)
          returns true if the server invoker is registered in the local JVM for a given locator/handler pair
static void registerInvoker(String transport, Class client, Class server)
          register a client/server invoker Class pair for a given transport
static void unregisterInvoker(String transport)
          unregister a client/server invoker pair for the given transport
static void unregisterLocator(InvokerLocator locator)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

InvokerRegistry

public InvokerRegistry()
Method Detail

getRegisteredServerLocators

public static final InvokerLocator[] getRegisteredServerLocators()
return an array of InvokerLocators that are local to this VM (server invokers)

Returns:

getSuitableServerLocatorForRemote

public static InvokerLocator getSuitableServerLocatorForRemote(InvokerLocator remote)
return a suitable local server invoker that can service the remote invoker locator based on a compatible transport

Parameters:
remote -
Returns:

getRegisteredInvokerTransports

public static final String[] getRegisteredInvokerTransports()
return an array of String of the registered transports

Returns:

getClientInvokers

public static final ClientInvoker[] getClientInvokers()
return an array of ClientInvokers that are connected

Returns:

getServerInvokers

public static final ServerInvoker[] getServerInvokers()
return an array of ServerInvokers that are connected

Returns:

registerInvoker

public static void registerInvoker(String transport,
                                   Class client,
                                   Class server)
register a client/server invoker Class pair for a given transport

Parameters:
transport -
client -
server -

unregisterInvoker

public static void unregisterInvoker(String transport)
unregister a client/server invoker pair for the given transport

Parameters:
transport -

unregisterLocator

public static void unregisterLocator(InvokerLocator locator)

isClientInvokerRegistered

public static boolean isClientInvokerRegistered(InvokerLocator locator)
returns true if the client invoker is registered in the local JVM for a given locator

Parameters:
locator -
Returns:

destroyClientInvoker

public static void destroyClientInvoker(InvokerLocator locator)
called to destroy any cached RemoteClientInvoker copies inside the registry. this method must be called when it is determined that a remote server (via the locator) is no longer available.

Parameters:
locator -

createClientInvoker

public static ClientInvoker createClientInvoker(InvokerLocator locator)
                                         throws Exception
create a ClientInvoker instance, using the specific InvokerLocator, which is just a client-side invoker to a remote server

Parameters:
locator -
Returns:
Throws:
Exception

isServerInvokerRegistered

public static boolean isServerInvokerRegistered(InvokerLocator locator)
returns true if the server invoker is registered in the local JVM for a given locator/handler pair

Parameters:
locator -
Returns:

createServerInvoker

public static ServerInvoker createServerInvoker(InvokerLocator locator)
                                         throws Exception
create a ServerInvoker instance, using the specific Invoker locator data and an implementation of the ServerInvocationHandler interface. Will use the default configuration values for the transport.

Parameters:
locator -
Returns:
Throws:
Exception

createServerInvoker

public static ServerInvoker createServerInvoker(InvokerLocator locator,
                                                Map configuration)
                                         throws Exception
create a ServerInvoker instance, using the specific Invoker locator data and an implementation of the ServerInvocationHandler interface along with

Parameters:
locator -
Returns:
Throws:
Exception


Copyright © 2004 JBoss Inc. All Rights Reserved.