Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Papyrus for Real Time » Creating internal transition in UML-RT?
Creating internal transition in UML-RT? [message #1771509] Fri, 25 August 2017 20:48 Go to next message
reza ahmadi is currently offline reza ahmadiFriend
Messages: 47
Registered: September 2016
Member
Hi,

Does it need special procedure to create an internal transition, or by simply picking "internal" as kind in UML tab (in properties window) a transition should be an internal one?

As I see unexpected behavior in a state machine with an internal transition. The transition simply does not get triggered:

Unexpected message to capsule instance prop1__TOP.trafficLight role trafficLight on port TestData protocol TestChannel signal nextTest

"trafficLight" is a capsule which its state machine has an internal transition (its kind is "internal"). That internal transition has "nextTest" as its trigger.

Thanks.

[Updated on: Fri, 25 August 2017 22:33]

Report message to a moderator

Re: Creating internal transition in UML-RT? [message #1771563 is a reply to message #1771509] Mon, 28 August 2017 06:50 Go to previous messageGo to next message
Peter Cigehn is currently offline Peter CigehnFriend
Messages: 49
Registered: September 2014
Member
Hi,

Since internal transitions are not represented as edges in the state machine diagram, they are created a bit different compared to other edge based transitions. You create an internal transition using the diagram assistant, i.e. hover with the mouse above a state for a short while, and then the diagram assistant pops up where you can select to add an internal transition to the state:

index.php/fa/30515/0/

When the internal transition is added, it is shown in a compartment of the state.

index.php/fa/30516/0/

There is also a bug 511472 tracking an additional enhancement where it should be possible to right-click and bring up the context menu for the state, and have a "new child" menu with the same choices as for the modeling assistant.

Hope this helps,

/Peter Cigéhn
Re: Creating internal transition in UML-RT? [message #1771612 is a reply to message #1771509] Mon, 28 August 2017 15:57 Go to previous messageGo to next message
Ernesto Posse is currently offline Ernesto PosseFriend
Messages: 438
Registered: March 2011
Senior Member
I think we don't support top-level internal transitions, i.e. internal transitions directly owned by the state machine. If you need such transitions, a workaround would be to put the contents of the state machine inside a composite state and add the internal transition to that composite state as Peter has explained.
Re: Creating internal transition in UML-RT? [message #1771614 is a reply to message #1771509] Mon, 28 August 2017 16:03 Go to previous messageGo to next message
Ernesto Posse is currently offline Ernesto PosseFriend
Messages: 438
Registered: March 2011
Senior Member
I think we do not support top-level internal transitions, i.e. internal transitions directly owned by the state machine. If you really need it, a workaround is to put all the contents of your state machine on a composite state and create the internal transition on the composite state as described by Peter.

Re: Creating internal transition in UML-RT? [message #1771615 is a reply to message #1771509] Mon, 28 August 2017 16:05 Go to previous messageGo to next message
Ernesto Posse is currently offline Ernesto PosseFriend
Messages: 438
Registered: March 2011
Senior Member
I think we do not support top-level internal transitions, i.e. internal transitions directly owned by the state machine. If you really need it, a workaround is to put all the contents of your state machine on a composite state and create the internal transition on the composite state as described by Peter.
Re: Creating internal transition in UML-RT? [message #1771713 is a reply to message #1771615] Tue, 29 August 2017 19:26 Go to previous messageGo to next message
reza ahmadi is currently offline reza ahmadiFriend
Messages: 47
Registered: September 2016
Member
Thanks Ernesto & Peter.
Ernesto: I did not understand "internal transitions directly owned by the state machine". I can see that by adding an internal transition to a non-composite state, it turned to a composite as a region is added to the state automatically and the internal transition is inserted inside the new region.
In any case, an internal transition on a composite state worked for me and fixed my scenario.

[Updated on: Tue, 29 August 2017 19:32]

Report message to a moderator

Re: Creating internal transition in UML-RT? [message #1771715 is a reply to message #1771713] Tue, 29 August 2017 19:42 Go to previous messageGo to next message
Ernesto Posse is currently offline Ernesto PosseFriend
Messages: 438
Registered: March 2011
Senior Member
In UML all elements except for the top-level model are owned by (contained in) some other element. States are owned indirectly by other States or by a State machine. Indirectly because they are owned by a "Region", but in UML-RT, as opposed to general UML, states and state machines own only one region which is why this region is hidden in the model explorer. If a state owns anything (transitions, pseudo-states, other states), then it is composite. So you can add internal transitions (or anything) to a simple state, but that will make it automatically into a composite state. A state machine also owns states, pseudo-states and transitions. Whenever you add any of these to the state machine, it is owned by the state machine. This includes internal transitions, which is just another kind of transition. My statement was that while we do support internal transitions, I think we only support internal transitions owned by a (composite) state and not by the state machine itself (more precisely, internal transitions owned by the state machine's own Region).
Re: Creating internal transition in UML-RT? [message #1772757 is a reply to message #1771715] Thu, 14 September 2017 19:58 Go to previous message
reza ahmadi is currently offline reza ahmadiFriend
Messages: 47
Registered: September 2016
Member
Thanks Ernesto for making it clearer!
Previous Topic:Problem setting up Papyrus-RT Dev Environment
Next Topic:Problem finishing the PingPong tutorial
Goto Forum:
  


Current Time: Sat Apr 20 04:04:01 GMT 2024

Powered by FUDForum. Page generated in 0.03477 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top