Skip to content

Commit ceec56f

Browse files
committed
ST6RI-801 Fixed source check in TransitionUsageAdapter::computeSource.
1 parent a5e4159 commit ceec56f

3 files changed

Lines changed: 28 additions & 2 deletions

File tree

org.omg.sysml.xpect.tests/src/org/omg/sysml/xpect/tests/simpletests/StateTest.sysml.xt

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,16 @@ package StateTest {
8888
exit act;
8989
}
9090

91+
state s0 {
92+
state s1 {
93+
state s2;
94+
}
95+
state s3 {
96+
state s4;
97+
}
98+
transition t1 first s1.s2 then s3.s4;
99+
}
100+
91101
state s parallel {
92102
state s1;
93103
state s2;

org.omg.sysml/src/org/omg/sysml/adapter/TransitionUsageAdapter.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
import org.omg.sysml.lang.sysml.ActionUsage;
2828
import org.omg.sysml.lang.sysml.Feature;
2929
import org.omg.sysml.lang.sysml.Membership;
30-
import org.omg.sysml.lang.sysml.OwningMembership;
30+
import org.omg.sysml.lang.sysml.ParameterMembership;
3131
import org.omg.sysml.lang.sysml.StateDefinition;
3232
import org.omg.sysml.lang.sysml.StateUsage;
3333
import org.omg.sysml.lang.sysml.Succession;
@@ -76,7 +76,7 @@ protected boolean isStateTransition() {
7676
protected void computeSource() {
7777
TransitionUsage target = getTarget();
7878
List<Membership> ownedMemberships = target.getOwnedMembership();
79-
if (ownedMemberships.isEmpty() || ownedMemberships.get(0) instanceof OwningMembership) {
79+
if (ownedMemberships.isEmpty() || ownedMemberships.get(0) instanceof ParameterMembership) {
8080
Feature source = UsageUtil.getPreviousFeature(target);
8181
Membership membership = SysMLFactory.eINSTANCE.createMembership();
8282
membership.setMemberElement(source);

sysml/src/examples/Simple Tests/StateTest.sysml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,22 @@ package StateTest {
3737
then S1;
3838

3939
exit act;
40+
41+
state S3 {
42+
state S3a;
43+
}
44+
45+
transition first S3.S3a then S1;
46+
}
47+
48+
state s0 {
49+
state s1 {
50+
state s2;
51+
}
52+
state s3 {
53+
state s4;
54+
}
55+
transition t1 first s1.s2 then s3.s4;
4056
}
4157

4258
state s parallel {

0 commit comments

Comments
 (0)