svn commit: r17299 - trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileUML.java
Michiel van der Wulp <[email protected]>
| Newsgroups | gmane.comp.lang.uml.argouml.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: mvw
Date: 2009-08-30 00:07:15-0700
New Revision: 17299
Modified:
trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileUML.java
Log:
Fix for issue 715 - added a critic to spot triggers on transitions from action states.
Modified: trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileUML.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileUML.java?view=diff&pathrev=17299&r1=17298&r2=17299
==============================================================================
--- trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileUML.java (original)
+++ trunk/src/argouml-app/src/org/argouml/profile/internal/ProfileUML.java 2009-08-30 00:07:15-0700
@@ -1,5 +1,5 @@
// $Id$
-// Copyright (c) 1996-2007 The Regents of the University of California. All
+// Copyright (c) 1996-2009 The Regents of the University of California. All
// Rights Reserved. Permission to use, copy, modify, and distribute this
// software and its documentation without fee, and without a written
// agreement is hereby granted, provided that the above copyright notice
@@ -285,8 +285,28 @@
"http://www.uml.org/"));
} catch (InvalidOclException e) {
e.printStackTrace();
- }
-
+ }
+
+ // ActionState
+ // 4.13.3.2 [3]
+ // Issue 715
+ try {
+ critics.add(new CrOCL("context ActionState inv:"
+ + "self.outgoing->forAll(t | t.trigger->size = 0)",
+ "Transitions originating from an action state have no trigger event.",
+ "As soon as the incoming transition of an ActionState is triggered, " +
+ "its entry action starts executing. Once the entry action has " +
+ "finished executing, the action is considered complete. " +
+ "When the action is complete, then the outgoing transition " +
+ "is enabled. \n\n" +
+ "Hence the outgoing transition shall not have a trigger event.\n\n" +
+ "To address this, remove the trigger event.",
+ ToDoItem.HIGH_PRIORITY, null, null,
+ "http://www.uml.org/"));
+ } catch (InvalidOclException e) {
+ e.printStackTrace();
+ }
+
setCritics(critics);
}
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2388626
To unsubscribe from this discussion, e-mail: [[email protected]].