commons-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Thiébault Benoît <>
Subject Re: [scxml] How to retrieve the transition target in a custom action
Date Tue, 21 Sep 2010 05:06:18 GMT

Le 21 sept. 2010 à 00:12, Rahul Akolkar a écrit :

> <snip/>
> I believe you mean a transition thats not a stay nor self transition,
> since the only way a custom action will ever execute is if some
> transiton is being followed (in order for SCXML executable content to
> execute).

Thank you Rahul for your answer.
Indeed I want to know wether I'm in a stay or self transition. I confirm that my custom action
is within a transition (or onentry/onexit).
> There isn't a direct way to access information about the transition
> target. I imagine your custom action is within a transition element.
> If so, you could walk up the SCXML object model and check whether the
> parent transition has a target attribute and whether it is the parent
> state id itself.

How can you do this from within a custom action?

> It may also be possible to infer whether a (non-stay)
> transition is being followed and what the target is, by using a
> suitable SCXMLListener impl.
> For long computations, you should consider using the external
> communications module (either <send> or <invoke>) to send an event to
> (or invoke) some external process which manages the computation and
> fires a completion event on the state machine when done.

I quickly looked at the invoke examples provided in SCXML tests and they seem less appropriate
than using custom actions, which make the XML file more readable IMHO.

> -Rahul
>> I need this info to know if it is possible to launch a long computation in a different
>> - if there is a transition target, the state machine will go to the new state and
my computation will be started in one state and continue in another one, which I want to avoid.
>> - if there is no transition target, it means that my computation is performed within
the original state (internal transition) and I can use my computation without fearing an undetermined
state machine.
>> Kind regards,
>> Ben
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message