John, after all my attempts on ruote I received a lot of new
information and have a bit mess in mind, so may be I missed
something.

My external participant need to store some result of external call
without replying to the engine and utilize stored information in the
"cancel".

Below is a simple example, which uses some questionable approach for
that. It works, but I'm not sure - it feels not good for me. Tried on
the ruote's "trunk".

------ Participant
   def consume( workitem )
      #some external work returns an "id"
      id = some_external_call()

      #now need to store received id for futher use in "cancel"
without replying. Reply will be done by external service.
      exp = fetch_flow_expression( workitem )
      exp.h.applied_workitem[ 'received_id'] = id
      exp.persist_or_raise
    end

    def cancel(fei, flavour)

      wi = Ruote::Exp::FlowExpression.fetch(@context,
fei.to_h).h.applied_workitem
      cancel_prev_external_call( wi['received_id'] )
    end

--------------------

Best regards, Oleg

-- 
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