Hi John,

Thank you very much.

Now that you have a more concrete example of what I am trying to do I
hope we can continue with the listener case from our irc?

Charles

On Sep 30, 8:57 pm, John Mettraux <[email protected]> wrote:
> On Thu, Oct 1, 2009 at 5:19 AM, Charles.Magid <[email protected]> wrote:
>
> > The register_participant example in RuoteAMQP::Participant was very
> > funny.  I would like to see a simple example, using ruote 2.0, to
> > illustrate the use of asynchronous listeners.
>
> Hello Charles,
>
> Sorry, I won't reply directly to your question. I will just try to
> provide a context, it could be useful since you're calling for an
> example.
>
> scenario 1) 'notification' (participant only)
>
> - process instance reaches participant expression
> - participant expression calls consume() of AmqpParticipant instance
> - workitem is placed on queue
> - on the other side, workitem is fetched by the "real participant"
> - on the ruote side, the AmqpParticipant immediately replies to the
> participant expression, the flow resumes immediately
> - real participant does something with the workitem (especially with
> its payload)
>
> scenario 2) 'forth and back' (participant and listener)
>
> - process instance reaches participant expression
> - participant expression calls consume() of AmqpParticipant instance
> - workitem is placed on queue
> - on the other side, workitem is fetched by the "real participant"
> - on the ruote side, the participant expression is waiting (is waiting
> for its reply() method to get called)
> - real participant does something with the workitem (especially with
> its payload)
> - after a while the real participant places a reply (the modified
> workitem) on the queue dedicated for the AmqpListener
> - the AmqpListener in the ruote engine fetches the workitem on its
> queue, locates the expression waiting for it (thanks to the @fei
> workitem instance variable) and calls the reply() method of that
> expression with the workitem as parameter
> - that participant expression replies to its parent expression, flow resumes
>
> scenario 3) 'launch that' (listener only)
>
> - AmqpListener receives item on the queue it listens to, it's a
> launchitem, not a workitem
> - AmqpListener calls engine.launch to start new process instance with
> the info held in launchitem
>
> I hope this will help, best regards,
>
> --
> John Mettraux   -  http://jmettraux.wordpress.com
--~--~---------~--~----~------------~-------~--~----~
you received this message because you are subscribed to the "ruote users" group.
to post : send email to [email protected]
to unsubscribe : send email to [email protected]
more options : http://groups.google.com/group/openwferu-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to