diff options
Diffstat (limited to 'extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org')
12 files changed, 98 insertions, 26 deletions
diff --git a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.java b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.java index 53c42c15d0f..c8cc408a72b 100644 --- a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.java +++ b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.java @@ -30,8 +30,10 @@ import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Value; import org.eclipse.papyrus.moka.fuml.debug.Debug; import org.eclipse.uml2.uml.Action; import org.eclipse.uml2.uml.ActivityNode; +import org.eclipse.uml2.uml.ConditionalNode; import org.eclipse.uml2.uml.InputPin; import org.eclipse.uml2.uml.LiteralBoolean; +import org.eclipse.uml2.uml.LoopNode; import org.eclipse.uml2.uml.OutputPin; import org.eclipse.uml2.uml.Pin; import org.eclipse.uml2.uml.UMLFactory; @@ -82,7 +84,7 @@ public abstract class ActionActivation extends ActivityNodeActivation { } Action action = (Action)(this.node); // *** Fire all input pins concurrently. *** - List<InputPin> inputPins = action.getInputs(); + List<InputPin> inputPins = getInputs(action); // CHANGED from: action.getInputs(); for(Iterator<InputPin> i = inputPins.iterator(); i.hasNext();) { InputPin pin = i.next(); PinActivation pinActivation = this.getPinActivation(pin); @@ -151,7 +153,7 @@ public abstract class ActionActivation extends ActivityNodeActivation { ready = this.incomingEdges.get(i - 1).hasOffer(); i = i + 1; } - List<InputPin> inputPins = ((Action)(this.node)).getInputs(); + List<InputPin> inputPins = getInputs((Action)this.node); // CHANGED from: ((Action)(this.node)).getInputs(); int j = 1; while(ready & j <= inputPins.size()) { ready = this.getPinActivation(inputPins.get(j - 1)).isReady(); @@ -162,7 +164,7 @@ public abstract class ActionActivation extends ActivityNodeActivation { public Boolean isFiring() { // Indicate whether this action activation is currently firing or not. - return firing; + return this.firing == null? false: this.firing; // ADDED check for null } public abstract void doAction(); @@ -171,7 +173,7 @@ public abstract class ActionActivation extends ActivityNodeActivation { // Fire all output pins and send offers on all outgoing control flows. Action action = (Action)(this.node); // *** Send offers from all output pins concurrently. *** - List<OutputPin> outputPins = action.getOutputs(); + List<OutputPin> outputPins = getOutputs(action); // CHANGED from: action.getOutputs(); for(Iterator<OutputPin> i = outputPins.iterator(); i.hasNext();) { OutputPin outputPin = i.next(); PinActivation pinActivation = this.getPinActivation(outputPin); @@ -193,7 +195,7 @@ public abstract class ActionActivation extends ActivityNodeActivation { // (or group), so they must be activated through the action activation.] Action action = (Action)(this.node); List<ActivityNode> inputPinNodes = new ArrayList<ActivityNode>(); - List<InputPin> inputPins = action.getInputs(); + List<InputPin> inputPins = getInputs(action); // CHANGED from: action.getInputs(); for(int i = 0; i < inputPins.size(); i++) { InputPin inputPin = inputPins.get(i); inputPinNodes.add(inputPin); @@ -204,7 +206,7 @@ public abstract class ActionActivation extends ActivityNodeActivation { this.addPinActivation((PinActivation)(this.group.getNodeActivation(node))); } List<ActivityNode> outputPinNodes = new ArrayList<ActivityNode>(); - List<OutputPin> outputPins = action.getOutputs(); + List<OutputPin> outputPins = getOutputs(action); // CHANGED from: action.getOutputs(); for(int i = 0; i < outputPins.size(); i++) { OutputPin outputPin = outputPins.get(i); outputPinNodes.add(outputPin); @@ -226,6 +228,7 @@ public abstract class ActionActivation extends ActivityNodeActivation { ActivityNodeActivation forkNodeActivation; if(this.outgoingEdges.size() == 0) { forkNodeActivation = new ForkNodeActivation(); + forkNodeActivation.running = false; // ADDED ActivityEdgeInstance newEdge = new ActivityEdgeInstance(); super.addOutgoingEdge(newEdge); forkNodeActivation.addIncomingEdge(newEdge); @@ -350,4 +353,17 @@ public abstract class ActionActivation extends ActivityNodeActivation { booleanLiteral.setValue(value); return (BooleanValue)(this.getExecutionLocus().executor.evaluate(booleanLiteral)); } + + // ADDED: + protected static List<InputPin> getInputs(Action action) { + return action instanceof LoopNode? ((LoopNode)action).getLoopVariableInputs(): + action.getInputs(); + } + + protected static List<OutputPin> getOutputs(Action action) { + return action instanceof LoopNode? ((LoopNode)action).getResults(): + action instanceof ConditionalNode? ((ConditionalNode)action).getResults(): + action.getOutputs(); + } + // } diff --git a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.java b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.java index 62c9a3e5acc..4ffec9f5431 100644 --- a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.java +++ b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.java @@ -61,13 +61,19 @@ public class AcceptEventActionActivation extends ActionActivation { // An accept event action activiation is ready to fire only if it is not // already waiting for an event. boolean ready; - if(this.waiting) { + if(this.isWaiting()) { // CHANGED "this.waiting" to "this.isWaiting()". ready = false; } else { ready = super.isReady(); } return ready; } + + // ADDED: + public Boolean isWaiting() { + return this.waiting == null? false: this.waiting; + } + // public void doAction() { // Do nothing. [This will never be called.] @@ -129,7 +135,7 @@ public class AcceptEventActionActivation extends ActionActivation { public void terminate() { // Terminate this action and unregister its event accepter. super.terminate(); - if(this.waiting) { + if(this.isWaiting()) { // CHANGED "this.waiting" to "this.isWaiting()". this.getExecutionContext().unregister(this.eventAccepter); this.waiting = false; } diff --git a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/LoopNodeActivation.java b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/LoopNodeActivation.java index 617f9813f08..c50db083893 100644 --- a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/LoopNodeActivation.java +++ b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/LoopNodeActivation.java @@ -31,7 +31,7 @@ import org.eclipse.uml2.uml.Pin; public class LoopNodeActivation extends StructuredActivityNodeActivation { public List<Values> bodyOutputLists = new ArrayList<Values>(); - + public void doStructuredActivity() { // Set the initial values for the body outputs to the values of the loop // variable input pins. @@ -51,6 +51,9 @@ public class LoopNodeActivation extends StructuredActivityNodeActivation { // List<OutputPin> loopVariables = loopNode.getLoopVariables(); // List<OutputPin> resultPins = loopNode.getResults(); // List<Values> bodyOutputLists = this.bodyOutputLists; + + this.bodyOutputLists.clear(); // Added + for(int i = 0; i < loopVariableInputs.size(); i++) { InputPin loopVariableInput = loopVariableInputs.get(i); Values bodyOutputList = new Values(); @@ -69,7 +72,7 @@ public class LoopNodeActivation extends StructuredActivityNodeActivation { // loop variables. LoopNode loopNode = (LoopNode)(this.node); List<OutputPin> loopVariables = loopNode.getLoopVariables(); - List<OutputPin> resultPins = loopNode.getResults(); + List<OutputPin> resultPins = this.getResults(); // CHANGED from: loopNode.getResults(); while(continuing) { // Set loop variable values this.runLoopVariables(); @@ -166,6 +169,7 @@ public class LoopNodeActivation extends StructuredActivityNodeActivation { public void createNodeActivations() { // In addition to creating activations for contained nodes, create // activations for any loop variables. + super.createNodeActivations(); this.activationGroup.createNodeActivations(this.makeLoopVariableList()); } @@ -186,7 +190,7 @@ public class LoopNodeActivation extends StructuredActivityNodeActivation { public void terminateAll() { // Copy the values of the body outputs to the loop outputs, and then // terminate all activations in the loop. - List<OutputPin> resultPins = ((LoopNode)this.node).getResults(); + List<OutputPin> resultPins = this.getResults(); // CHANGED from: ((LoopNode)this.node).getResults(); for(int i = 0; i < bodyOutputLists.size(); i++) { Values bodyOutputList = bodyOutputLists.get(i); OutputPin resultPin = resultPins.get(i); @@ -235,4 +239,14 @@ public class LoopNodeActivation extends StructuredActivityNodeActivation { this.doLoop(continuing); } } + + // ADDED: + private List<OutputPin> getResults() { + LoopNode node = (LoopNode)this.node; + List<OutputPin> results = new ArrayList<OutputPin>(node.getResults()); + List<OutputPin> loopVariables = node.getLoopVariables(); + results.removeAll(loopVariables); + return results; + } + // } diff --git a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.java b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.java index e4bc3b82369..dcc779150ab 100644 --- a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.java +++ b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.java @@ -61,7 +61,7 @@ public class StructuredActivityNodeActivation extends ActionActivation { // and loop nodes.) Action action = (Action)(this.node); // *** Concurrently send offers from all input pins. *** - List<InputPin> inputPins = action.getInputs(); + List<InputPin> inputPins = getInputs(action); // CHANGED from: action.getInputs(); for(Iterator<InputPin> i = inputPins.iterator(); i.hasNext();) { InputPin inputPin = i.next(); PinActivation pinActivation = this.getPinActivation(inputPin); @@ -102,12 +102,12 @@ public class StructuredActivityNodeActivation extends ActionActivation { activityNodes.add(node); if(node instanceof Action) { Action action = (Action)node; - List<InputPin> inputPins = action.getInputs(); + List<InputPin> inputPins = getInputs(action); // CHANGED from: action.getInputs(); for(int j = 0; j < inputPins.size(); j++) { InputPin inputPin = inputPins.get(j); activityNodes.add(inputPin); } - List<OutputPin> outputPins = action.getOutputs(); + List<OutputPin> outputPins = getOutputs(action); // CHANGED from: action.getOutputs(); for(int j = 0; j < outputPins.size(); j++) { OutputPin outputPin = outputPins.get(j); activityNodes.add(outputPin); @@ -151,6 +151,7 @@ public class StructuredActivityNodeActivation extends ActionActivation { // Create an activation group and create node activations for all the // nodes within the structured activity node. super.createNodeActivations(); + this.activationGroup = new ActivityNodeActivationGroup(); this.activationGroup.containingNodeActivation = this; this.activationGroup.createNodeActivations(((StructuredActivityNode)(this.node)).getNodes()); diff --git a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.java b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.java index 3bd7d8f8588..ac64fe6a74a 100644 --- a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.java +++ b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.java @@ -136,7 +136,7 @@ public class ExpansionRegionActivation extends ActionActivation { while(j <= outputElements.size()) { OutputPinActivation groupOutput = new OutputPinActivation(); groupOutput.run(); - activationGroup.groupOutputs.add(new OutputPinActivation()); + activationGroup.groupOutputs.add(groupOutput); // CHANGED "new OutputPinActivation()" to "groupOutput" j = j + 1; } activationGroup.createNodeActivations(region.getNodes()); diff --git a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/BooleanValue.java b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/BooleanValue.java index 2d24d927cc6..ee4eb384df6 100644 --- a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/BooleanValue.java +++ b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/BooleanValue.java @@ -38,7 +38,7 @@ public class BooleanValue extends PrimitiveValue { // value. boolean isEqual = false; if(otherValue instanceof BooleanValue) { - isEqual = ((BooleanValue)otherValue).value == this.value; + isEqual = ((BooleanValue)otherValue).value.equals(this.value); // CHANGED == to equals; } return isEqual; } diff --git a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/InstanceValueEvaluation.java b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/InstanceValueEvaluation.java index 38d579dc170..18db33d1d8a 100644 --- a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/InstanceValueEvaluation.java +++ b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/InstanceValueEvaluation.java @@ -22,7 +22,6 @@ import org.eclipse.uml2.uml.Behavior; import org.eclipse.uml2.uml.Class; import org.eclipse.uml2.uml.Classifier; import org.eclipse.uml2.uml.DataType; -import org.eclipse.uml2.uml.Enumeration; import org.eclipse.uml2.uml.EnumerationLiteral; import org.eclipse.uml2.uml.InstanceSpecification; import org.eclipse.uml2.uml.InstanceValue; @@ -43,17 +42,24 @@ public class InstanceValueEvaluation extends Evaluation { // value specifications for the specified slot for the feature. // Debug.println("[evaluate] InstanceValueEvaluation..."); InstanceSpecification instance = ((InstanceValue)this.specification).getInstance(); - List<Classifier> types = instance.getClassifiers(); - Classifier myType = types.get(0); - Debug.println("[evaluate] type = " + myType.getName()); + // List<Classifier> types = instance.getClassifiers(); + // Classifier myType = types.get(0); + // Debug.println("[evaluate] type = " + myType.getName()); Value value; if(instance instanceof EnumerationLiteral) { // Debug.println("[evaluate] Type is an enumeration."); EnumerationValue enumerationValue = new EnumerationValue(); - enumerationValue.type = (Enumeration)myType; + // enumerationValue.type = (Enumeration)myType; + enumerationValue.type = ((EnumerationLiteral)instance).getEnumeration(); // ADDED enumerationValue.literal = (EnumerationLiteral)instance; value = enumerationValue; + Debug.println("[evaluate] type = " + enumerationValue.type.getName()); // ADDED } else { + // ADDED: + List<Classifier> types = instance.getClassifiers(); + Classifier myType = types.get(0); + Debug.println("[evaluate] type = " + myType.getName()); + // StructuredValue structuredValue = null; if(myType instanceof DataType) { // Debug.println("[evaluate] Type is a data type."); diff --git a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/IntegerValue.java b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/IntegerValue.java index 2a3863e5790..6e351061b2b 100644 --- a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/IntegerValue.java +++ b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/IntegerValue.java @@ -38,7 +38,7 @@ public class IntegerValue extends PrimitiveValue { // value. boolean isEqual = false; if(otherValue instanceof IntegerValue) { - isEqual = ((IntegerValue)otherValue).value == this.value; + isEqual = ((IntegerValue)otherValue).value.equals(this.value); // CHANGED == to equals } return isEqual; } diff --git a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/UnlimitedNaturalValue.java b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/UnlimitedNaturalValue.java index 427eed4a506..4c375644aff 100644 --- a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/UnlimitedNaturalValue.java +++ b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/UnlimitedNaturalValue.java @@ -39,7 +39,7 @@ public class UnlimitedNaturalValue extends PrimitiveValue { // unlimited natural value. boolean isEqual = false; if(otherValue instanceof UnlimitedNaturalValue) { - isEqual = ((UnlimitedNaturalValue)otherValue).value == this.value; + isEqual = ((UnlimitedNaturalValue)otherValue).value.equals(this.value); // CHANGED == to equals } return isEqual; } diff --git a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ClassifierBehaviorExecution.java b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ClassifierBehaviorExecution.java index cdb15c3e2ac..e5224fd7f7e 100644 --- a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ClassifierBehaviorExecution.java +++ b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ClassifierBehaviorExecution.java @@ -70,7 +70,8 @@ public class ClassifierBehaviorExecution { // TODO tmp public void _startObjectBehavior() { - // Asynchronous start of object behavior is deactivated + // ADDED: + this.execution.execute(); } public void terminate() { diff --git a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ObjectActivation.java b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ObjectActivation.java index 57f955991c8..ce9ffe6d158 100644 --- a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ObjectActivation.java +++ b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ObjectActivation.java @@ -123,10 +123,12 @@ public class ObjectActivation { _send(new ArrivalSignal()); } + /* // TODO This is temporary public void _send(ArrivalSignal signal) { // Asynchronous communications are deactivated } + */ public void startBehavior(Class classifier, List<ParameterValue> inputs) { // Start the event dispatch loop for this object activation (if it has @@ -168,8 +170,34 @@ public class ObjectActivation { } } + /* // TODO tmp public void _startObjectBehavior() { // Start object behavior is deactivated } + */ + + // ADDED: + + int signalCount = 0; + public void _startObjectBehavior() { + // *** This should start the EventDispatchLoop *** + + while (this.signalCount > 0) { + this.dispatchNextEvent(); + signalCount = signalCount - 1; + } + } // _startObjectBehavior + + public void _send(ArrivalSignal signal) { + // Signal the arrival of a new signal instance in the event pool. + // *** This should send an ArrivalSignal to the EventDispatchLoop. *** + + this.signalCount = this.signalCount + 1; + if (this.signalCount == 1) { + this._startObjectBehavior(); + } + } // _send + + // } diff --git a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.java b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.java index 8e7d0beb986..5255ad08937 100644 --- a/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.java +++ b/extraplugins/moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.java @@ -96,10 +96,10 @@ public abstract class ExecutionFactory { // Debug.println("[instantiateOpaqueExecution] Checking " + // this.primitiveBehaviorPrototypes.get(i).objectId() + "..."); OpaqueBehaviorExecution prototype = this.primitiveBehaviorPrototypes.get(i - 1); - // if (prototype.getBehavior() == behavior) { + if (prototype.getBehavior() == behavior) { // CHANGED back to original // TODO Behavior is always different from .getBehavior() // Need to understand why... - if(prototype.getBehavior().getQualifiedName().equals(behavior.getQualifiedName())) { + // if(prototype.getBehavior().getQualifiedName().equals(behavior.getQualifiedName())) { execution = (OpaqueBehaviorExecution)(prototype.copy()); } i = i + 1; |