svn commit: r18116 - trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr

Bob Tarling <[email protected]>
Newsgroups gmane.comp.lang.uml.argouml.cvs
Message-ID <[email protected]>
Author: bobtarling
Date: 2010-03-21 09:15:37-0700
New Revision: 18116

Modified:
   trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/CommonBehaviorFactoryMDRImpl.java
   trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java

Log:
Allow a raised signal to be created in an operation for UML1.4

Modified: trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/CommonBehaviorFactoryMDRImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/CommonBehaviorFactoryMDRImpl.java?view=diff&pathrev=18116&r1=18115&r2=18116
==============================================================================
--- trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/CommonBehaviorFactoryMDRImpl.java	(original)
+++ trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/CommonBehaviorFactoryMDRImpl.java	2010-03-21 09:15:37-0700
@@ -350,7 +350,7 @@
             ((SignalEvent) element).setSignal(signal);
             return signal;  
         }
-        throw new IllegalArgumentException();
+        throw new IllegalArgumentException("Can't build a signal for a " + element);
     }
 
     /**

Modified: trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java
Url: http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java?view=diff&pathrev=18116&r1=18115&r2=18116
==============================================================================
--- trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java	(original)
+++ trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java	2010-03-21 09:15:37-0700
@@ -422,7 +422,8 @@
         // specifies valid elements for a Operation to contain
         validContainmentMap.put(Operation.class, 
                 new Class<?>[] { 
-                    Parameter.class
+                    Parameter.class,
+                    Signal.class
                 });
         
         // specifies valid elements for an Event to contain
@@ -607,7 +608,8 @@
         // TODO: Does anything actually make use of this? It can
         // cause unexpected behaviour.
         if (this.modelImpl.getFacade().isAFeature(container)
-                && elementType != metaTypes.getParameter()) {
+                && elementType != metaTypes.getParameter()
+                && elementType != metaTypes.getSignal()) {
             container = this.modelImpl.getFacade().getOwner(container);
         }
         
@@ -637,6 +639,8 @@
                         param, null);
         } else if (elementType == metaTypes.getParameter()) {
             element = getCore().buildParameter(container, null);
+        } else if (elementType == metaTypes.getSignal()) {
+            element = modelImpl.getCommonBehaviorFactory().buildSignal(container);
         } else {
             // build all other elements using existing buildNode
             element = buildNode(elementType);

------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2462807

To unsubscribe from this discussion, e-mail: [[email protected]].
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.