org.jacorb.imr

Class ServerTable

public class ServerTable extends Object implements Serializable

This class represents the server table of the implementation repository. It contains all servers, POAs and hosts, and is serialized on shutdown, deserialized on startup.
It provides methods for adding, deleting and listing servers, POAs and hosts.

Author: Nicolas Noffke $Id: ServerTable.java,v 1.10 2004/05/06 12:39:59 nicolas Exp $

Field Summary
ResourceLocktable_lock
Constructor Summary
ServerTable()
Method Summary
ImRHostInfogetHost(String name)
Get the ImRHostInfo object of a host.
HostInfo[]getHosts()
List all hosts in the table.
ImRPOAInfogetPOA(String name)
Get the ImRPOAInfo object of a POA.
POAInfo[]getPOAs()
List all POAs in the table.
ImRServerInfogetServer(String name)
This method gets a server for a specified name.
ServerInfo[]getServers()
List all servers in the table.
booleanhasServer(String name)
This method tests, if a server is known.
voidputHost(String name, ImRHostInfo host)
Add a host to the table.
voidputPOA(String name, ImRPOAInfo poa)
Add a POA to the server table.
voidputServer(String name, ImRServerInfo server)
Adds a server to the server table.
ObjectremoveHost(String name)
Remove a host from the table.
voidremovePOA(String name)
Remove a POA from the server table.
voidremoveServer(String name)
Remove a server from the server table.

Field Detail

table_lock

public transient ResourceLock table_lock

Constructor Detail

ServerTable

public ServerTable()

Method Detail

getHost

public ImRHostInfo getHost(String name)
Get the ImRHostInfo object of a host.

Parameters: name the hosts name.

Returns: the ImRHostInfo object for name, null if name not in the table.

getHosts

public HostInfo[] getHosts()
List all hosts in the table.

Returns: a HostInfo array containing all hosts. Used by the CORBA interface of the repository.

getPOA

public ImRPOAInfo getPOA(String name)
Get the ImRPOAInfo object of a POA.

Parameters: name the POAs name.

Returns: the ImRPOAInfo object for name, null if name not in the table.

getPOAs

public POAInfo[] getPOAs()
List all POAs in the table.

Returns: a POAInfo array containing all POAs. Used by the CORBA interface of the repository.

getServer

public ImRServerInfo getServer(String name)
This method gets a server for a specified name.

Parameters: name the servers name.

Returns: ImRServerInfo the ImRServerInfo object with name name.

Throws: UnknownServerName thrown if the table does not contain an entry for name.

getServers

public ServerInfo[] getServers()
List all servers in the table.

Returns: a ServerInfo array containing all servers. Used by the CORBA interface of the repository.

hasServer

public boolean hasServer(String name)
This method tests, if a server is known.

Parameters: name the servers name.

Returns: true, if a server with the specified name has already been registered.

putHost

public void putHost(String name, ImRHostInfo host)
Add a host to the table. If an entry for name is already in the table it is overwritten.

Parameters: name the hosts name. host the hosts ImRHostInfo object.

putPOA

public void putPOA(String name, ImRPOAInfo poa)
Add a POA to the server table.

Parameters: name the POAs name. poa the POAs ImRPOAInfo object.

putServer

public void putServer(String name, ImRServerInfo server)
Adds a server to the server table.

Parameters: name the servers name. server the servers corresponding ImRServerInfo object.

Throws: DuplicateServerName thrown if name is already in the table.

removeHost

public Object removeHost(String name)
Remove a host from the table.

Parameters: name the hosts name.

removePOA

public void removePOA(String name)
Remove a POA from the server table.

Parameters: name the POAs name.

removeServer

public void removeServer(String name)
Remove a server from the server table.

Parameters: name the servers name.

Throws: UnknownServerName thrown if no server with name is found in the table.