svn commit: r18146 - trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java
Bob Tarling <[email protected]>
| Newsgroups | gmane.comp.lang.uml.argouml.cvs |
|---|---|
| Message-ID | <[email protected]> |
Author: bobtarling
Date: 2010-03-24 07:11:56-0700
New Revision: 18146
Modified:
trunk/src/argouml-core-model-mdr/src/org/argouml/model/mdr/UmlFactoryMDRImpl.java
Log:
First commit with drop down button for creating guards, triggers and effects
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=18146&r1=18145&r2=18146
==============================================================================
--- 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-24 07:11:56-0700
@@ -93,11 +93,14 @@
import org.omg.uml.behavioralelements.commonbehavior.TerminateAction;
import org.omg.uml.behavioralelements.commonbehavior.UmlException;
import org.omg.uml.behavioralelements.commonbehavior.UninterpretedAction;
+import org.omg.uml.behavioralelements.statemachines.CallEvent;
+import org.omg.uml.behavioralelements.statemachines.ChangeEvent;
import org.omg.uml.behavioralelements.statemachines.CompositeState;
import org.omg.uml.behavioralelements.statemachines.Event;
import org.omg.uml.behavioralelements.statemachines.FinalState;
import org.omg.uml.behavioralelements.statemachines.Guard;
import org.omg.uml.behavioralelements.statemachines.Pseudostate;
+import org.omg.uml.behavioralelements.statemachines.SignalEvent;
import org.omg.uml.behavioralelements.statemachines.SimpleState;
import org.omg.uml.behavioralelements.statemachines.State;
import org.omg.uml.behavioralelements.statemachines.StateMachine;
@@ -105,6 +108,7 @@
import org.omg.uml.behavioralelements.statemachines.StubState;
import org.omg.uml.behavioralelements.statemachines.SubmachineState;
import org.omg.uml.behavioralelements.statemachines.SynchState;
+import org.omg.uml.behavioralelements.statemachines.TimeEvent;
import org.omg.uml.behavioralelements.statemachines.Transition;
import org.omg.uml.behavioralelements.usecases.Actor;
import org.omg.uml.behavioralelements.usecases.Extend;
@@ -495,8 +499,17 @@
new Class<?>[] {
Argument.class
});
- }
+ // specifies valid elements for an AssociationRole to contain
+ validContainmentMap.put(Transition.class,
+ new Class<?>[] {
+ Guard.class,
+ CallAction.class, ReturnAction.class,
+ CreateAction.class, DestroyAction.class, SendAction.class, TerminateAction.class, UninterpretedAction.class, ActionSequence.class,
+ CallEvent.class, ChangeEvent.class, SignalEvent.class, TimeEvent.class
+ });
+ }
+
public Object buildConnection(Object elementType, Object fromElement,
Object fromStyle, Object toElement, Object toStyle,
Object unidirectional, Object namespace)
@@ -716,6 +729,44 @@
} else if (elementType == metaTypes.getArgument()) {
element = Model.getCommonBehaviorFactory().createArgument();
Model.getCommonBehaviorHelper().addActualArgument(container, element);
+ } else if (elementType == metaTypes.getGuard()) {
+ element = Model.getStateMachinesFactory().buildGuard(container);
+ } else if (elementType == metaTypes.getCreateAction()) {
+ element = Model.getCommonBehaviorFactory().createCreateAction();
+ ((Transition) container).setEffect((Action) element);
+ } else if (elementType == metaTypes.getCallAction()) {
+ element = Model.getCommonBehaviorFactory().createCallAction();
+ ((Transition) container).setEffect((Action) element);
+ } else if (elementType == metaTypes.getReturnAction()) {
+ element = Model.getCommonBehaviorFactory().createReturnAction();
+ ((Transition) container).setEffect((Action) element);
+ } else if (elementType == metaTypes.getDestroyAction()) {
+ element = Model.getCommonBehaviorFactory().createDestroyAction();
+ ((Transition) container).setEffect((Action) element);
+ } else if (elementType == metaTypes.getSendAction()) {
+ element = Model.getCommonBehaviorFactory().createSendAction();
+ ((Transition) container).setEffect((Action) element);
+ } else if (elementType == metaTypes.getTerminateAction()) {
+ element = Model.getCommonBehaviorFactory().createTerminateAction();
+ ((Transition) container).setEffect((Action) element);
+ } else if (elementType == metaTypes.getUninterpretedAction()) {
+ element = Model.getCommonBehaviorFactory().createUninterpretedAction();
+ ((Transition) container).setEffect((Action) element);
+ } else if (elementType == metaTypes.getActionSequence()) {
+ element = Model.getCommonBehaviorFactory().createActionSequence();
+ ((Transition) container).setEffect((Action) element);
+ } else if (elementType == metaTypes.getCallEvent()) {
+ element = Model.getStateMachinesFactory().createCallEvent();
+ ((Transition) container).setTrigger((Event) element);
+ } else if (elementType == metaTypes.getChangeEvent()) {
+ element = Model.getStateMachinesFactory().createChangeEvent();
+ ((Transition) container).setTrigger((Event) element);
+ } else if (elementType == metaTypes.getSignalEvent()) {
+ element = Model.getStateMachinesFactory().createSignalEvent();
+ ((Transition) container).setTrigger((Event) element);
+ } else if (elementType == metaTypes.getTimeEvent()) {
+ element = Model.getStateMachinesFactory().createTimeEvent();
+ ((Transition) container).setTrigger((Event) element);
} else {
// build all other elements using existing buildNode
element = buildNode(elementType);
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=5905&dsMessageId=2464373
To unsubscribe from this discussion, e-mail: [[email protected]].