|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectuk.ac.starlink.plastic.MinimalHub
Minimal PLASTIC hub implementation. No fancy add-ons such as logging
are provided. See PlasticHub for a more user-friendly
implementation. This class is provided mainly to make it
as clear as possible what the implementation of a hub involves.
| Field Summary |
| Fields inherited from interface org.votech.plastic.PlasticHubListener |
PLASTIC_CONFIG_FILENAME, PLASTIC_RMI_PORT_KEY, PLASTIC_VERSION_KEY, PLASTIC_XMLRPC_URL_KEY |
| Constructor Summary | |
MinimalHub(ServerSet servers)
Constructs a new hub, given running server objects. |
|
| Method Summary | |
Object |
execute(String method,
Vector params)
This method implements all the XML-RPC services offered by the hub. |
void |
finalize()
|
URI |
getHubId()
Get this hub's ID. |
List |
getMessageRegisteredIds(URI message)
Get all the applications that support a particular message |
String |
getName(URI id)
Get the name of this application, as used at registration. |
List |
getRegisteredIds()
Get all the IDs of the currently registered applications. |
List |
getUnderstoodMessages(URI id)
Get the messages understood by this application. |
static void |
main(String[] args)
Main method. |
List |
pollForMessages(URI id)
Not supported. |
URI |
registerNoCallBack(String name)
Register this application with the hub, but don't send it any messages in return. |
URI |
registerPolling(String name,
List supportedMessages)
Not supported. |
URI |
registerRMI(String name,
List supportedMessages,
PlasticListener caller)
A java-rmi version of registerXMLRPC |
URI |
registerXMLRPC(String name,
List supportedMessages,
URL callbackURL)
Register an application with the hub. |
Map |
request(URI sender,
URI message,
List args)
Send a message to all registered Plastic applications. |
void |
requestAsynch(URI sender,
URI message,
List args)
Send a request to all registered Plastic apps, but don't wait for a response. |
Map |
requestToSubset(URI sender,
URI message,
List args,
List recipientIds)
Send a request to listed registered Plastic apps. |
void |
requestToSubsetAsynch(URI sender,
URI message,
List args,
List recipientIds)
Send a request to listed registered Plastic apps, but don't wait for a response. |
void |
stop()
Shuts down this hub and tidies up. |
void |
unregister(URI id)
Unregister the application from the hub. |
| Methods inherited from class java.lang.Object |
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
public MinimalHub(ServerSet servers)
throws RemoteException
servers - object encapsulating listening servers| Method Detail |
public URI getHubId()
PlasticHubListener
getHubId in interface PlasticHubListener
public URI registerRMI(String name,
List supportedMessages,
PlasticListener caller)
PlasticHubListenerregisterXMLRPC
registerRMI in interface PlasticHubListenername - see registerRMIcaller - the PlasticListener that wishes to registerfor other parameters
public URI registerXMLRPC(String name,
List supportedMessages,
URL callbackURL)
PlasticHubListener
registerXMLRPC in interface PlasticHubListenername - An optional string with a short name describing the application. This may be added to the hub
assigned ID, making it more human friendly.supportedMessages - an array of messages (as URIs) the application is interested in. An empty List signifies
"all".callbackURL - the application's internal xmlrpc server URL. Used by the hub to send messages to the
application.
PlasticHubListener.registerRMI(String, List, PlasticListener),
PlasticHubListener.registerNoCallBack(String)public URI registerNoCallBack(String name)
PlasticHubListener
registerNoCallBack in interface PlasticHubListenerfor parameterspublic void unregister(URI id)
PlasticHubListener
unregister in interface PlasticHubListenerid - the application to unregisterpublic List getRegisteredIds()
PlasticHubListener
getRegisteredIds in interface PlasticHubListenerpublic String getName(URI id)
PlasticHubListener
getName in interface PlasticHubListenerid - the plastic ID returned at registration
public List getUnderstoodMessages(URI id)
PlasticHubListener
getUnderstoodMessages in interface PlasticHubListenerid - the plastic ID returned at registration
public List getMessageRegisteredIds(URI message)
PlasticHubListener
getMessageRegisteredIds in interface PlasticHubListenermessage - the messageId you're interested in
public Object execute(String method,
Vector params)
throws IOException,
URISyntaxException
execute in interface org.apache.xmlrpc.XmlRpcHandlermethod - XML-RPC method name, including the "plastic.hub"
prefixparams - list of method arguments
IOException
URISyntaxException
public Map request(URI sender,
URI message,
List args)
PlasticHubListener
request in interface PlasticHubListenersender - the id of the originating tool - provided by the hub on
registration. Note that the hub is at liberty to refused to forward requests that
don't come from an ID that it has registered.message - the message to send.args - any arguments to pass with the message
public Map requestToSubset(URI sender,
URI message,
List args,
List recipientIds)
PlasticHubListenerrequest for
details of the other parameters.
requestToSubset in interface PlasticHubListenerrecipientIds - a list of target application ids (as URIs)
public void requestAsynch(URI sender,
URI message,
List args)
PlasticHubListenerrequest for details of parameters.
requestAsynch in interface PlasticHubListener
public void requestToSubsetAsynch(URI sender,
URI message,
List args,
List recipientIds)
PlasticHubListener
requestToSubsetAsynch in interface PlasticHubListenerrecipientIds - a List of target application ids (as URIs). See request for
details of the other parameters.
public URI registerPolling(String name,
List supportedMessages)
UnsupportedOperationExceptionpublic List pollForMessages(URI id)
UnsupportedOperationExceptionpublic void stop()
public void finalize()
throws Throwable
Throwable
public static void main(String[] args)
throws IOException,
RemoteException
PlasticHub.main(java.lang.String[]).
IOException
RemoteException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||