Package ucb.util
Class SimpleObjectRegistry
java.lang.Object
ucb.util.SimpleObjectRegistry
A kind of registry that provides a very simple means of exchanging remote
objects by name. One can create a registry, allowing the constructor
to select an available port. One can find a bound object by name over
a sequence of port numbers and hosts.
-
Field Summary
Modifier and TypeFieldDescriptionstatic final int
The default values for LOWPORT and HIGHPORT arguments.static final int
The default values for LOWPORT and HIGHPORT arguments.static final int
The default values for LOWPORT and HIGHPORT arguments. -
Constructor Summary
ConstructorDescriptionSame as SimpleObjectRegistry(DEFAULT_LOW_PORT, DEFAULT_HIGH_PORT).SimpleObjectRegistry
(int port) Return SimpleObjectRegistry(PORT, PORT).SimpleObjectRegistry
(int lowPort, int highPort) Create a new SimpleObjectRegistry on one of the ports LOWPORT to HIGHPORT, if possible. -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
Remove all bindings from this registry, and disable it from further use.static Remote
findObject
(String name, String host) Return findObject(NAME, HOST, DEFAULT_LOW_PORT, DEFAULT_HIGH_PORT).static Remote
findObject
(String name, String[] hosts) Return findObject(NAME, HOSTS, DEFAULT_LOW_PORT, DEFAULT_HIGH_PORT).static Remote
findObject
(String name, String[] hosts, int lowPort, int highPort) Return a remote object named NAME in some registry on one of the hosts in HOSTS on some port number between LOWPORT and HIGHPORT.static Remote
findObject
(String name, String host, int lowPort, int highPort) Return a remote object named NAME in some registry on HOST on some port number between LOWPORT and HIGHPORT.int
port()
Return the port number on which this registry is exported.void
Bind NAME to VALUE in this registry, replacing any existing binding.void
unbind()
Remove all bindings in this registry.void
Remove any binding of NAME in this registry.
-
Field Details
-
DEFAULT_PORTS
public static final int DEFAULT_PORTSThe default values for LOWPORT and HIGHPORT arguments.- See Also:
-
DEFAULT_LOW_PORT
public static final int DEFAULT_LOW_PORTThe default values for LOWPORT and HIGHPORT arguments.- See Also:
-
DEFAULT_HIGH_PORT
public static final int DEFAULT_HIGH_PORTThe default values for LOWPORT and HIGHPORT arguments.- See Also:
-
-
Constructor Details
-
SimpleObjectRegistry
Create a new SimpleObjectRegistry on one of the ports LOWPORT to HIGHPORT, if possible. Throws RemoteException if no registry can be created on any of these ports.- Throws:
RemoteException
-
SimpleObjectRegistry
Return SimpleObjectRegistry(PORT, PORT).- Throws:
RemoteException
-
SimpleObjectRegistry
Same as SimpleObjectRegistry(DEFAULT_LOW_PORT, DEFAULT_HIGH_PORT).- Throws:
RemoteException
-
-
Method Details
-
findObject
public static Remote findObject(String name, String host, int lowPort, int highPort) throws NotBoundException Return a remote object named NAME in some registry on HOST on some port number between LOWPORT and HIGHPORT. Throws NotBoundException if no such object is found for whatever reason (i.e., either because no registry is found or because NAME is unbound on all such registries.)- Throws:
NotBoundException
-
findObject
Return findObject(NAME, HOST, DEFAULT_LOW_PORT, DEFAULT_HIGH_PORT).- Throws:
NotBoundException
-
findObject
public static Remote findObject(String name, String[] hosts, int lowPort, int highPort) throws NotBoundException Return a remote object named NAME in some registry on one of the hosts in HOSTS on some port number between LOWPORT and HIGHPORT. Throws NotBoundException if no such object is found for whatever reason (i.e., either because no registry is found or because NAME is unbound on all such registries.)- Throws:
NotBoundException
-
findObject
Return findObject(NAME, HOSTS, DEFAULT_LOW_PORT, DEFAULT_HIGH_PORT).- Throws:
NotBoundException
-
port
public int port()Return the port number on which this registry is exported. -
rebind
Bind NAME to VALUE in this registry, replacing any existing binding. -
unbind
Remove any binding of NAME in this registry. -
unbind
public void unbind()Remove all bindings in this registry. -
close
public void close()Remove all bindings from this registry, and disable it from further use.
-