Package org.astrogrid.samp.xmlrpc
Interface HubActor
-
- All Known Implementing Classes:
HubXmlRpcHandler.HubActorImpl
interface HubActorDefines the XML-RPC methods which must be implemented by a Standard Profile hub.- Since:
- 15 Jul 2008
- Author:
- Mark Taylor
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description java.lang.Stringcall(java.lang.String privateKey, java.lang.String recipientId, java.lang.String msgTag, java.util.Map msg)Sends a message to a given client expecting a response.java.util.MapcallAll(java.lang.String privateKey, java.lang.String msgTag, java.util.Map msg)Sends a message to all subscribed clients expecting responses.java.util.MapcallAndWait(java.lang.String privateKey, java.lang.String recipientId, java.util.Map msg, java.lang.String timeout)Sends a message synchronously to a client.voiddeclareMetadata(java.lang.String privateKey, java.util.Map meta)Declares metadata for the calling client.voiddeclareSubscriptions(java.lang.String privateKey, java.util.Map subs)Declares subscription information for the calling client.java.util.MapgetMetadata(java.lang.String privateKey, java.lang.String clientId)Returns metadata for a given client.java.util.ListgetRegisteredClients(java.lang.String privateKey)Returns a list of the public-ids of all currently registered clients.java.util.MapgetSubscribedClients(java.lang.String privateKey, java.lang.String mtype)Returns a map of the clients subscribed to a given MType.java.util.MapgetSubscriptions(java.lang.String privateKey, java.lang.String clientId)Returns subscriptions for a given client.voidnotify(java.lang.String privateKey, java.lang.String recipientId, java.util.Map msg)Sends a message to a given client without wanting a response.java.util.ListnotifyAll(java.lang.String privateKey, java.util.Map msg)Sends a message to all subscribed clients without wanting a response.voidping()Throws an exception if service is not operating.voidping(java.lang.String privateKey)Throws an exception if service is not operating.java.util.Mapregister(java.lang.String secret)Registers a new client and returns a map with registration information.voidreply(java.lang.String privateKey, java.lang.String msgId, java.util.Map response)Responds to a previously sent message.voidsetXmlrpcCallback(java.lang.String privateKey, java.lang.String url)Sets the XML-RPC URL to use for callbacks for a callable client.voidunregister(java.lang.String privateKey)Unregisters a registered client.
-
-
-
Method Detail
-
ping
void ping() throws SampException
Throws an exception if service is not operating.- Throws:
SampException
-
ping
void ping(java.lang.String privateKey) throws SampException
Throws an exception if service is not operating.- Parameters:
privateKey- ignored- Throws:
SampException
-
register
java.util.Map register(java.lang.String secret) throws SampExceptionRegisters a new client and returns a map with registration information.- Parameters:
secret- registration password- Returns:
RegInfo-like map.- Throws:
SampException
-
unregister
void unregister(java.lang.String privateKey) throws SampExceptionUnregisters a registered client.- Parameters:
privateKey- calling client private key- Throws:
SampException
-
setXmlrpcCallback
void setXmlrpcCallback(java.lang.String privateKey, java.lang.String url) throws SampExceptionSets the XML-RPC URL to use for callbacks for a callable client.- Parameters:
privateKey- calling client private keyurl- XML-RPC endpoint for client API callbacks- Throws:
SampException
-
declareMetadata
void declareMetadata(java.lang.String privateKey, java.util.Map meta) throws SampExceptionDeclares metadata for the calling client.- Parameters:
privateKey- calling client private keymeta-Metadata-like map- Throws:
SampException
-
getMetadata
java.util.Map getMetadata(java.lang.String privateKey, java.lang.String clientId) throws SampExceptionReturns metadata for a given client.- Parameters:
privateKey- calling client private keyclientId- public ID for client whose metadata is required- Returns:
Metadata-like map- Throws:
SampException
-
declareSubscriptions
void declareSubscriptions(java.lang.String privateKey, java.util.Map subs) throws SampExceptionDeclares subscription information for the calling client.- Parameters:
privateKey- calling client private keysubs-Subscriptions-like map- Throws:
SampException
-
getSubscriptions
java.util.Map getSubscriptions(java.lang.String privateKey, java.lang.String clientId) throws SampExceptionReturns subscriptions for a given client.- Parameters:
privateKey- calling client private key- Returns:
Subscriptions-like map- Throws:
SampException
-
getRegisteredClients
java.util.List getRegisteredClients(java.lang.String privateKey) throws SampExceptionReturns a list of the public-ids of all currently registered clients.- Parameters:
privateKey- calling client private key- Returns:
- list of Strings
- Throws:
SampException
-
getSubscribedClients
java.util.Map getSubscribedClients(java.lang.String privateKey, java.lang.String mtype) throws SampExceptionReturns a map of the clients subscribed to a given MType.- Parameters:
privateKey- calling client private keymtype- MType of interest- Returns:
- map in which the keys are the public-ids of clients subscribed
to
mtype - Throws:
SampException
-
notify
void notify(java.lang.String privateKey, java.lang.String recipientId, java.util.Map msg) throws SampExceptionSends a message to a given client without wanting a response.- Parameters:
privateKey- calling client private keyrecipientId- public-id of client to receive messagemsg-Message-like map- Throws:
SampException
-
notifyAll
java.util.List notifyAll(java.lang.String privateKey, java.util.Map msg) throws SampExceptionSends a message to all subscribed clients without wanting a response.- Parameters:
privateKey- calling client private keymsg-Message-like map- Returns:
- list of public-ids for clients to which the notify will be sent
- Throws:
SampException
-
call
java.lang.String call(java.lang.String privateKey, java.lang.String recipientId, java.lang.String msgTag, java.util.Map msg) throws SampExceptionSends a message to a given client expecting a response.- Parameters:
privateKey- calling client private keyrecipientId- public-id of client to receive messagemsgTag- arbitrary string tagging this message for caller's benefitmsg-Message-like map- Returns:
- message ID
- Throws:
SampException
-
callAll
java.util.Map callAll(java.lang.String privateKey, java.lang.String msgTag, java.util.Map msg) throws SampExceptionSends a message to all subscribed clients expecting responses.- Parameters:
privateKey- calling client private keymsgTag- arbitrary string tagging this message for caller's benefitmsg-Message-like map- Returns:
- public-id->msg-id map for clients to which an attempt to send the call will be made
- Throws:
SampException
-
callAndWait
java.util.Map callAndWait(java.lang.String privateKey, java.lang.String recipientId, java.util.Map msg, java.lang.String timeout) throws SampExceptionSends a message synchronously to a client.- Parameters:
privateKey- calling client private keyrecipientId- public-id of client to receive messagemsg-Message-like maptimeout- timeout in seconds encoded as a SAMP int- Returns:
Response-like map- Throws:
SampException
-
reply
void reply(java.lang.String privateKey, java.lang.String msgId, java.util.Map response) throws SampExceptionResponds to a previously sent message.- Parameters:
privateKey- calling client private keymsgId- ID associated with earlier sendresponse-Response-like map- Throws:
SampException
-
-