public class ClientProxy extends CORBAReferenceSerializator implements Client, java.io.Serializable
| Modifier and Type | Field and Description |
|---|---|
protected si.ijs.maci.Client |
client
CORBA reference.
|
protected java.lang.String |
ior
Cached serialized reference.
|
| Constructor and Description |
|---|
ClientProxy(si.ijs.maci.Client client)
Constructor for ClientProxy.
|
| Modifier and Type | Method and Description |
|---|---|
AuthenticationData |
authenticate(long executionId,
java.lang.String question)
Authentication method.
|
void |
components_available(ComponentInfo[] cobs)
Notify client about the change (availability) of the components currently in use by this client.
|
void |
components_unavailable(java.lang.String[] cobs)
Notify client that some of the components currently in use by client have become unavailable.
|
void |
disconnect()
Disconnect notification.
|
boolean |
equals(org.omg.CORBA.Object obj) |
si.ijs.maci.Client |
getClient()
Returns the client.
|
java.lang.String |
getRemoteLocation()
Get CORBA host/port string.
|
void |
message(MessageType type,
java.lang.String message)
The Manager and administrators use this method for sending textual messages to the client.
|
java.lang.String |
name()
Client name.
|
boolean |
ping()
Manager pings its clients (both GUI clients, as well as Containers) repeatedly to verify that they still exist.
|
void |
release()
We explicitly release the client reference, so that the ClientGIOPConnection can be closed,
where otherwise it will occupy one of the connector threads until it gets garbage collected,
possibly leading to the manager lock up described in http://jira.alma.cl/browse/COMP-979
|
void |
taggedmessage(MessageType type,
short id,
java.lang.String message)
The Manager and administrators use this method for sending tagged textual messages to the client.
|
static ClientType |
toClientType(si.ijs.maci.ClientType type)
Convert CORBA ClienType to manager type.
|
static ImplLang |
toImplLang(si.ijs.maci.ImplLangType type)
Convert CORBA ImplLang to manager type.
|
java.lang.String |
toString()
Returns a single-line rendition of this instance into text.
|
si.ijs.maci.Client |
wrapForRoundtripTimeout(si.ijs.maci.Client corbaRef,
double timeoutSeconds)
Impl note: The corba spec (v 2.4, 4.3.8.1) describes the difference between
SetOverrideType.SET_OVERRIDE and SetOverrideType.ADD_OVERRIDE.
|
deserialize, getOrb, serialize, setOrbprotected si.ijs.maci.Client client
protected java.lang.String ior
public ClientProxy(si.ijs.maci.Client client)
client - CORBA reference, non-null.public static ClientType toClientType(si.ijs.maci.ClientType type)
type - public static ImplLang toImplLang(si.ijs.maci.ImplLangType type)
type - public AuthenticationData authenticate(long executionId, java.lang.String question) throws RemoteException
Clientauthenticate in interface Clientquestion - The question posed by the Manager.RemoteExceptionClient.authenticate(long, String)public void components_available(ComponentInfo[] cobs) throws RemoteException
Clientcomponents_available in interface ClientRemoteExceptionClient.components_available(ComponentInfo[])public void components_unavailable(java.lang.String[] cobs)
throws RemoteException
Clientcomponents_unavailable in interface ClientRemoteExceptionClient.components_unavailable(String[])public void disconnect()
throws RemoteException
Clientdisconnect in interface ClientRemoteExceptionClient.disconnect()public void message(MessageType type, java.lang.String message) throws RemoteException
Clientmessage in interface Clienttype - Type of the message, instance of MessageType.message - Contents of the message. The contents are human readable.RemoteExceptionClient.message(MessageType, String)public void taggedmessage(MessageType type, short id, java.lang.String message) throws RemoteException
Clienttaggedmessage in interface Clienttype - Type of the message, instance of MessageType.id - Tag of the message, integermessage - Contents of the message. The contents are human readable.RemoteExceptionClient.message(MessageType, String)public java.lang.String name()
throws RemoteException
Clientname in interface ClientRemoteExceptionClient.name()public boolean ping()
throws RemoteException
ClientRemoteTransientException exception is thrown, the Manager should retry the ping several times,
and only then shall the client be assumed to be malfunctioning.
If another exception is thrown, the client may be immediately assumed to be malfunctioning.
Once the client is found to be malfunctioning, the Manager makes an implicit logout of the client.ping in interface ClientRemoteExceptionClient.ping()public si.ijs.maci.Client wrapForRoundtripTimeout(si.ijs.maci.Client corbaRef,
double timeoutSeconds)
throws AcsJCORBAProblemEx
Impl note: The corba spec (v 2.4, 4.3.8.1) describes the difference between SetOverrideType.SET_OVERRIDE and SetOverrideType.ADD_OVERRIDE. It is not clear to me (HSO) which one should be used, or if there is no practical difference.
corbaRef - timeoutSeconds - AcsJCORBAProblemExpublic si.ijs.maci.Client getClient()
public java.lang.String getRemoteLocation()
throws RemoteException
getRemoteLocation in interface ClientRemoteExceptionClient.getRemoteLocation()public void release()
release in interface ClientClient.release()public java.lang.String toString()
toString in class java.lang.Objectpublic boolean equals(org.omg.CORBA.Object obj)
Object.equals(Object)