On May 26, 2012, at 10:16 PM, Saminda Wijeratne wrote:

> You are correct. You can use the WSMessager service to do the job. XBaya
> wraps this service and is exposed as a Monitor API through the
> AiravataClient.
> 
> If you know the topic id of a running workflow use the function,
> airavataClient.getWorkflowExecutionMonitor(topicid,monitorEventListener)
> which will do the subscribing for you.
> 
> From the time you call this function, all the messages received for that
> running workflow will be passed to the monitorEventListener object (where
> you can do whatever you want with it).
> 
> Unfortunately you cannot subscribe to all workflow notifications using a
> single call.. you have to subscribe to each of them separately using the
> above function... in order to retrieve all existing topic ids use the
> function
> airavataClient.getRegistry().getWorkflowExecutionIdByUser(user);

Actually you can subscribe to all notifications. 

Hasitha, 

Please refer to the sandbox project - [1] which should answer all your 
questions. Note that the code is based on legacy version (XSUL SOAP Engine) of 
WS Messenger service and needs to be updated to Axis 2 based Messenger service. 
I recently created a JIRA for this task [2]. For  your next question on topic 
Based Subscription you can also refer to the samples in WS Messenger - [3] - 
https://svn.apache.org/repos/asf/incubator/airavata/trunk/modules/ws-messenger/samples/messagebroker/wse-topic-subscription/.
 Ideally we should expose this from Airavata Client API as well, feel free to 
create a JIRA when you see these kind of missing features. And ofcourse you are 
more then welcome to submit patches for the JIRA's you create :).

Cheers,
Suresh

[1] - 
https://svn.apache.org/repos/asf/incubator/airavata/sandbox/workflow-monitoring-util/
[2] - https://issues.apache.org/jira/browse/AIRAVATA-419
[3] - 
https://svn.apache.org/repos/asf/incubator/airavata/trunk/modules/ws-messenger/samples/messagebroker/wse-topic-subscription/

> Note that here parameter "user" corresponds to the user who executed the
> workflow... passing null to it should return all topicid regardless the
> user who executed it.
> 
> Please feel free to ask for more clarifications.
> 
> Regards,
> Saminda
> On Sat, May 26, 2012 at 10:18 AM, Hasitha Aravinda <[email protected]
>> wrote:
> 
>> Hi devs,
>> 
>> Currently we are working on implementing Metadata Catalog for Apache
>> Airavata. We stared developing a dummy workflow notification generator
>> to test our tool, but found that it is not suitable for testing. So
>> now we are thinking to get workflow notification from a Airavata
>> server.
>> 
>> Our Requirement is to subscribe to all workflow notifications to have
>> them in our Metadata Catalog. I went through Airavata documentations
>> and found that this can be done using Ws-messanger component, but
>> don't have clear idea to how to do this.
>> 
>> Any thoughts ?
>> 
>> Thank you,
>> Hasitha.
>> 

Reply via email to