public interface cMsgDomainInterface
Modifier and Type | Method and Description |
---|---|
void |
connect()
Method to connect to a particular domain.
|
void |
disconnect()
Method to close the connection to the domain.
|
void |
flush(int timeout)
Method to force cMsg client to send pending communications with domain.
|
java.lang.String |
getCurrentUDL()
Get the UDL the client is currently connected to.
|
int |
getDebug()
Get client's level of debug output.
|
java.lang.String |
getDescription()
Get the client's description.
|
java.lang.String |
getDomain()
Get the name of the domain connected to.
|
java.lang.String |
getHost()
Get the host the client is running on.
|
java.lang.String |
getInfo(java.lang.String s)
General purpose I/O method which gets a string that the implementation
class wants to return up to the top (this) level API.
|
java.lang.String |
getName()
Get the name of the client.
|
java.lang.String |
getServerHost()
Get the host of the server (if any) that this client is connected to.
|
int |
getServerPort()
Get the port of the server (if any) that this client is connected to.
|
cMsgShutdownHandlerInterface |
getShutdownHandler()
Method to get the shutdown handler of the client.
|
java.lang.String |
getUDL()
Get the client's UDL.
|
java.lang.String |
getUDLRemainder()
Get the client's UDL remainder.
|
boolean |
isConnected()
Method to determine if this object is still connected to the domain or not.
|
boolean |
isReceiving()
Method telling whether callbacks are activated or not.
|
cMsgMessage |
monitor(java.lang.String command)
This method is a synchronous call to receive a message containing monitoring data
which describes the state of the cMsg domain the user is connected to.
|
void |
send(cMsgMessage message)
Method to send a message to the domain for further distribution.
|
cMsgMessage |
sendAndGet(cMsgMessage message,
int timeout)
The message is sent as it would be in the
send(org.jlab.coda.cMsg.cMsgMessage) method and a single synchronous
response is received. |
void |
setDebug(int debug)
Set client's level of debug output.
|
void |
setDescription(java.lang.String description)
Set the description of the client.
|
void |
setName(java.lang.String name)
Set the name of the client.
|
void |
setShutdownHandler(cMsgShutdownHandlerInterface handler)
Method to set the shutdown handler of the client.
|
void |
setUDL(java.lang.String UDL)
Set the UDL of the client.
|
void |
setUDLRemainder(java.lang.String UDLRemainder)
Set the UDL remainder of the client.
|
void |
shutdownClients(java.lang.String client,
boolean includeMe)
Method to shutdown the given client(s).
|
void |
shutdownServers(java.lang.String server,
boolean includeMyServer)
Method to shutdown the given server(s).
|
void |
start()
Method to start or activate the subscription callbacks.
|
void |
stop()
Method to stop or deactivate the subscription callbacks.
|
cMsgSubscriptionHandle |
subscribe(java.lang.String subject,
java.lang.String type,
cMsgCallbackInterface cb,
java.lang.Object userObj)
Method to subscribe to receive messages of a subject and type from the domain.
|
cMsgMessage |
subscribeAndGet(java.lang.String subject,
java.lang.String type,
int timeout)
This method is like a one-time subscribe.
|
int |
syncSend(cMsgMessage message,
int timeout)
Method to send a message to the domain for further distribution
and wait for a response from the subdomain handler that got it.
|
void |
unsubscribe(cMsgSubscriptionHandle handle)
Method to unsubscribe a previous subscription to receive messages of a subject and type
from the domain.
|
void connect() throws cMsgException
cMsgException
- for cMsg error.void disconnect() throws cMsgException
cMsgException
- for cMsg error.boolean isConnected()
void send(cMsgMessage message) throws cMsgException
message
- message to sendcMsgException
- for cMsg error.int syncSend(cMsgMessage message, int timeout) throws cMsgException
message
- message to sendtimeout
- time in milliseconds to wait for a responsecMsgException
- for cMsg error.void flush(int timeout) throws cMsgException
timeout
- time in milliseconds to wait for completioncMsgException
- for cMsg error.cMsgMessage subscribeAndGet(java.lang.String subject, java.lang.String type, int timeout) throws cMsgException, java.util.concurrent.TimeoutException
subject
- subject of message desired from servertype
- type of message desired from servertimeout
- time in milliseconds to wait for a messagecMsgException
- for cMsg error.java.util.concurrent.TimeoutException
- if timeout occurscMsgMessage sendAndGet(cMsgMessage message, int timeout) throws cMsgException, java.util.concurrent.TimeoutException
send(org.jlab.coda.cMsg.cMsgMessage)
method and a single synchronous
response is received. The domain notes the fact that a response to it is expected,
and sends it to all subscribed to its subject and type.
When a marked response is received from a client, it sends that
first response back to the original sender regardless of its subject or type.
The response may be null.message
- message sent to servertimeout
- time in milliseconds to wait for a response message, zero means wait forever.cMsgException
- for cMsg error.java.util.concurrent.TimeoutException
- if timeout occurscMsgSubscriptionHandle subscribe(java.lang.String subject, java.lang.String type, cMsgCallbackInterface cb, java.lang.Object userObj) throws cMsgException
subject
- message subjecttype
- message typecb
- callback object whose single method is called upon receiving a message
of subject and typeuserObj
- any user-supplied object to be given to the callback method as an argumentcMsgException
- for cMsg error.void unsubscribe(cMsgSubscriptionHandle handle) throws cMsgException
handle
- the object returned from a subscribe callcMsgException
- for cMsg error.cMsgMessage monitor(java.lang.String command) throws cMsgException
command
- directive for monitoring processcMsgException
- for cMsg error.void start()
void stop()
void shutdownClients(java.lang.String client, boolean includeMe) throws cMsgException
client
- client(s) to be shutdownincludeMe
- if true, it is permissible to shutdown calling clientcMsgException
- for cMsg error.void shutdownServers(java.lang.String server, boolean includeMyServer) throws cMsgException
server
- server(s) to be shutdownincludeMyServer
- if true, it is permissible to shutdown calling client's
cMsg servercMsgException
- for cMsg error.void setShutdownHandler(cMsgShutdownHandlerInterface handler)
handler
- shutdown handlercMsgShutdownHandlerInterface getShutdownHandler()
java.lang.String getDomain()
java.lang.String getName()
void setName(java.lang.String name)
name
- name of clientjava.lang.String getDescription()
void setDescription(java.lang.String description)
description
- description of clientjava.lang.String getUDL()
void setUDL(java.lang.String UDL) throws cMsgException
UDL
- UDL of clientcMsgException
- for cMsg error.java.lang.String getCurrentUDL()
java.lang.String getUDLRemainder()
void setUDLRemainder(java.lang.String UDLRemainder)
UDLRemainder
- UDL remainder of client UDLjava.lang.String getHost()
java.lang.String getServerHost()
int getServerPort()
java.lang.String getInfo(java.lang.String s)
s
- input stringboolean isReceiving()
void setDebug(int debug)
debug
- client's level of debug outputint getDebug()