/* * Initial version copyright 2008 Lockheed Martin Corporation, except * as stated in the file entitled Licensing-Information. * * All modifications copyright 2009-2012 Data Access Technologies, Inc. * * Licensed under the Academic Free License version 3.0 * (http://www.opensource.org/licenses/afl-3.0.php), except as stated * in the file entitled Licensing-Information. */ package fUML.Syntax.Activities.IntermediateActivities; import fUML.Debug; import UMLPrimitiveTypes.*; import fUML.Syntax.Activities.CompleteStructuredActivities.*; public class Activity extends fUML.Syntax.CommonBehaviors.BasicBehaviors.Behavior { public fUML.Syntax.Activities.CompleteStructuredActivities.StructuredActivityNodeList structuredNode = new fUML.Syntax.Activities.CompleteStructuredActivities.StructuredActivityNodeList(); public fUML.Syntax.Activities.IntermediateActivities.ActivityNodeList node = new fUML.Syntax.Activities.IntermediateActivities.ActivityNodeList(); public boolean isReadOnly = false; public fUML.Syntax.Activities.IntermediateActivities.ActivityEdgeList edge = new fUML.Syntax.Activities.IntermediateActivities.ActivityEdgeList(); public void setIsReadOnly(boolean isReadOnly) { this.isReadOnly = isReadOnly; } // setIsReadOnly public void addNode( fUML.Syntax.Activities.IntermediateActivities.ActivityNode node) { super.addOwnedElement(node); this.node.add(node); node._setActivity(this); if (node instanceof StructuredActivityNode) { this.structuredNode.add((StructuredActivityNode) node); } } // addNode public void addEdge( fUML.Syntax.Activities.IntermediateActivities.ActivityEdge edge) { super.addOwnedElement(edge); this.edge.addValue(edge); edge._setActivity(this); } // addEdge public void _setContext( fUML.Syntax.CommonBehaviors.BasicBehaviors.BehavioredClassifier context) { // Note: The context of an activity should be set only _after_ all nodes // have been added to the activity. super._setContext(context); for (int i = 0; i < this.node.size(); i++) { ActivityNode node = this.node.getValue(i); if (node instanceof fUML.Syntax.Actions.BasicActions.Action) { ((fUML.Syntax.Actions.BasicActions.Action) node) ._setContext(context); } } } // _setContext } // Activity