Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoracuccuru2013-04-17 05:19:23 -0400
committeracuccuru2013-04-17 05:19:23 -0400
commit3a80fa1fc3d5709edd7716c6a270fe118b0f8fac (patch)
treec7b9183891a273b13f4c8367f8630e1f64092c7b /sandbox
parent6065a8a617720e0f095ea8e03fa7973327d1178f (diff)
downloadorg.eclipse.papyrus-3a80fa1fc3d5709edd7716c6a270fe118b0f8fac.tar.gz
org.eclipse.papyrus-3a80fa1fc3d5709edd7716c6a270fe118b0f8fac.tar.xz
org.eclipse.papyrus-3a80fa1fc3d5709edd7716c6a270fe118b0f8fac.zip
405703: [Moka] fUML: executions do not properly terminate, either in debug or run mode
https://bugs.eclipse.org/bugs/show_bug.cgi?id=405703 Partially fixes the problem. By the way, Code in fUML refactored to make contribution to debug API less invasive. Breakpoints not reconnected.
Diffstat (limited to 'sandbox')
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Activator.classbin0 -> 917 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine$1.classbin0 -> 1681 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine$2.classbin0 -> 1658 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine.classbin0 -> 7008 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngineForMoka$1.classbin0 -> 1511 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngineForMoka.classbin0 -> 7505 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.classbin0 -> 13943 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/CallActionActivation.classbin0 -> 4260 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/CallBehaviorActionActivation.classbin0 -> 1776 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/CallOperationActionActivation.classbin0 -> 1638 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/InputPinActivation.classbin0 -> 1340 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/InvocationActionActivation.classbin0 -> 486 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/OutputPinActivation.classbin0 -> 462 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/PinActivation.classbin0 -> 3210 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/SendSignalActionActivation.classbin0 -> 2662 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.classbin0 -> 5485 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionEventAccepter.classbin0 -> 1243 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReadExtentActionActivation.classbin0 -> 2228 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReadIsClassifiedObjectActionActivation.classbin0 -> 2817 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReclassifyObjectActionActivation.classbin0 -> 3254 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReduceActionActivation.classbin0 -> 4154 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/StartClassifierBehaviorActionActivation.classbin0 -> 1501 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/StartObjectBehaviorActionActivation.classbin0 -> 3132 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/AddStructuralFeatureValueActionActivation.classbin0 -> 5895 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ClearAssociationActionActivation.classbin0 -> 2148 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ClearStructuralFeatureActionActivation.classbin0 -> 2865 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/CreateLinkActionActivation.classbin0 -> 3917 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/CreateObjectActionActivation.classbin0 -> 1608 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/DestroyLinkActionActivation.classbin0 -> 4853 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/DestroyObjectActionActivation.classbin0 -> 4608 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/LinkActionActivation.classbin0 -> 3600 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ReadLinkActionActivation.classbin0 -> 3931 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ReadSelfActionActivation.classbin0 -> 1299 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ReadStructuralFeatureActionActivation.classbin0 -> 2848 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/RemoveStructuralFeatureValueActionActivation.classbin0 -> 4989 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/StructuralFeatureActionActivation.classbin0 -> 3970 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/TestIdentityActionActivation.classbin0 -> 1650 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ValueSpecificationActionActivation.classbin0 -> 1583 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/WriteLinkActionActivation.classbin0 -> 508 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/WriteStructuralFeatureActionActivation.classbin0 -> 1792 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/ClauseActivation.classbin0 -> 4590 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/ConditionalNodeActivation.classbin0 -> 7495 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/LoopNodeActivation.classbin0 -> 8031 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.classbin0 -> 7679 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/Values.classbin0 -> 601 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionActivationGroup.classbin0 -> 3194 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionNodeActivation.classbin0 -> 2661 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.classbin0 -> 11018 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/TokenSet.classbin0 -> 620 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityEdgeInstance.classbin0 -> 4287 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityExecution.classbin0 -> 4138 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityFinalNodeActivation.classbin0 -> 2698 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivation.classbin0 -> 8706 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivationGroup.classbin0 -> 11184 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityParameterNodeActivation.classbin0 -> 3487 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlNodeActivation.classbin0 -> 1387 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlToken.classbin0 -> 1215 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/DecisionNodeActivation.classbin0 -> 10138 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/FlowFinalNodeActivation.classbin0 -> 1710 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkNodeActivation.classbin0 -> 2771 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkedToken.classbin0 -> 1752 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/InitialNodeActivation.classbin0 -> 1226 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/JoinNodeActivation.classbin0 -> 1068 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/MergeNodeActivation.classbin0 -> 509 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ObjectNodeActivation.classbin0 -> 3872 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ObjectToken.classbin0 -> 1341 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/Offer.classbin0 -> 2407 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/Token.classbin0 -> 1744 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/BooleanValue.classbin0 -> 1924 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/CompoundValue.classbin0 -> 5423 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/DataValue.classbin0 -> 1153 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/DispatchStrategy.classbin0 -> 1691 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/EnumerationValue.classbin0 -> 2350 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Evaluation.classbin0 -> 648 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/ExtensionalValue.classbin0 -> 988 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/FeatureValue.classbin0 -> 2446 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/InstanceValueEvaluation.classbin0 -> 5308 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/IntegerValue.classbin0 -> 2622 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Link.classbin0 -> 5263 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralBooleanEvaluation.classbin0 -> 1272 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralEvaluation.classbin0 -> 1242 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralIntegerEvaluation.classbin0 -> 1272 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralNullEvaluation.classbin0 -> 590 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralRealEvaluation.classbin0 -> 1167 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralStringEvaluation.classbin0 -> 1219 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralUnlimitedNaturalEvaluation.classbin0 -> 1364 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Object_.classbin0 -> 4438 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/PrimitiveValue.classbin0 -> 1089 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/RealValue.classbin0 -> 2703 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/RedefinitionBasedDispatchStrategy.classbin0 -> 2386 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Reference.classbin0 -> 3830 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/StringValue.classbin0 -> 1830 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/StructuredValue.classbin0 -> 4270 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/UnlimitedNaturalValue.classbin0 -> 2208 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Value.classbin0 -> 2020 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/BasicBehaviors/Execution.classbin0 -> 3248 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/BasicBehaviors/OpaqueBehaviorExecution.classbin0 -> 2977 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/BasicBehaviors/ParameterValue.classbin0 -> 1369 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ArrivalSignal.classbin0 -> 406 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ClassifierBehaviorExecution.classbin0 -> 3052 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/EventAccepter.classbin0 -> 643 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/FIFOGetNextEventStrategy.classbin0 -> 1343 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/GetNextEventStrategy.classbin0 -> 778 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ObjectActivation.classbin0 -> 7400 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/SignalInstance.classbin0 -> 1198 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ChoiceStrategy.classbin0 -> 587 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.classbin0 -> 5754 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactoryL1.classbin0 -> 1867 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Executor.classbin0 -> 4468 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/FirstChoiceStrategy.classbin0 -> 656 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Locus.classbin0 -> 4073 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/SemanticStrategy.classbin0 -> 418 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/SemanticVisitor.classbin0 -> 707 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL2/ExecutionFactoryL2.classbin0 -> 5565 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL3/ExecutionFactoryL3.classbin0 -> 2973 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/debug/ControlDelegate.classbin0 -> 7912 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/debug/Debug.classbin0 -> 542 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/AbstractOpaqueBehaviorExecutionRegistry.classbin0 -> 4252 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/AbstractSystemServicesRegistry.classbin0 -> 4056 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/DefaultSemanticStrategyRegistry.classbin0 -> 1568 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/IOpaqueBehaviorExecutionRegistry.classbin0 -> 403 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/ISemanticStrategyRegistry.classbin0 -> 376 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/ISystemServicesRegistry.classbin0 -> 366 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/SystemServicesRegistryUtils.classbin0 -> 2366 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.java11
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/OutputPinActivation.java74
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/PinActivation.java7
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.java7
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.java6
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionNodeActivation.java7
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.java12
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityEdgeInstance.java61
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityExecution.java5
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityFinalNodeActivation.java7
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivation.java64
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityParameterNodeActivation.java7
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlNodeActivation.java7
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/DecisionNodeActivation.java55
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/FlowFinalNodeActivation.java7
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkNodeActivation.java9
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/InitialNodeActivation.java8
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Object_.java4
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.java5
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Locus.java31
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/plugin.xml2
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine.java254
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngineForMoka.java200
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/ControlDelegate.java253
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/Debug.java2
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/FumlThread.java45
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/StackFrameManager.java69
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/FUMLPresentationUtils.java53
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaStackFrame_from_ActivityEdgeInstance.java38
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaStackFrame_from_ActivityNodeActivation.java35
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaStackFrame_from_UMLModelElement.java80
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaValue_for_fUML.java46
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaValue_from_FeatureValue.java90
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaValue_from_Value.java64
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_for_fUML.java26
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_from_ContextObject.java37
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_from_FeatureValue.java42
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_from_Value.java36
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/Activator.classbin0 -> 902 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/MokaConstants.classbin0 -> 1978 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/IMarshaler.classbin0 -> 5704 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/Marshaller.classbin0 -> 14888 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/EventMessage.classbin0 -> 603 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/Start_Event.classbin0 -> 1512 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/isuspendresume/Resume_Event.classbin0 -> 1359 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/isuspendresume/Suspend_Event.classbin0 -> 1626 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/iterminate/Terminate_Event.classbin0 -> 1305 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/Ack.classbin0 -> 466 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ReplyMessage.classbin0 -> 392 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/istackframe/GetVariables_Reply.classbin0 -> 1143 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ithread/GetStackFrames_Reply.classbin0 -> 1205 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ivalue/GetValueString_Reply.classbin0 -> 1045 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ivariable/GetReferenceTypeName_Reply.classbin0 -> 1086 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ivariable/GetValue_Reply.classbin0 -> 1097 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/RequestMessage.classbin0 -> 403 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ibreakpointlistener/AddBreakpoint_Request.classbin0 -> 1198 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ibreakpointlistener/RemoveBreakpoint_Request.classbin0 -> 1213 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/idisconnect/Disconnect_Request.classbin0 -> 873 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/istackframe/GetVariables_Request.classbin0 -> 1174 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/isuspendresume/Resume_Request.classbin0 -> 1285 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/isuspendresume/Suspend_Request.classbin0 -> 1292 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/iterminate/Terminate_Request.classbin0 -> 1146 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ithread/GetStackFrames_Request.classbin0 -> 1132 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ivalue/GetValueString_Request.classbin0 -> 1124 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ivariable/GetReferenceTypeName_Request.classbin0 -> 1201 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ivariable/GetValue_Request.classbin0 -> 1118 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaBreakpoint.classbin0 -> 5678 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaDebugElement.classbin0 -> 2122 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaDebugTarget$EventDispatchJob.classbin0 -> 1842 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaDebugTarget.classbin0 -> 16194 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaJobChangeListener.classbin0 -> 1210 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaProcess.classbin0 -> 6120 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaStackFrame.classbin0 -> 4728 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaThread.classbin0 -> 4125 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaValue.classbin0 -> 2187 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaVariable.classbin0 -> 2440 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/engine/AbstractExecutionEngine.classbin0 -> 13775 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/engine/IExecutionEngine.classbin0 -> 1645 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/engine/MokaExecutionEngineJob.classbin0 -> 1576 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/launch/EditorUtils.classbin0 -> 4882 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/launch/MokaLaunchDelegate.classbin0 -> 7561 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/launch/OpenPapyrusEditorRunnable.classbin0 -> 1586 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/locator/MokaSourceLocator$MokaSourceLookupParticipant.classbin0 -> 1463 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/locator/MokaSourceLocator.classbin0 -> 1464 bytes
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/debug/MokaDebugTarget.java3
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/debug/MokaProcess.java32
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/AbstractExecutionEngine.java172
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/IExecutionEngine.java24
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/MokaExecutionEngineJob.java15
-rw-r--r--sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/launch/MokaLaunchDelegate.java48
214 files changed, 532 insertions, 1528 deletions
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Activator.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Activator.class
new file mode 100644
index 00000000000..a5a9330b3cd
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Activator.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine$1.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine$1.class
new file mode 100644
index 00000000000..3ec526145f3
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine$1.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine$2.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine$2.class
new file mode 100644
index 00000000000..c6653f75f51
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine$2.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine.class
new file mode 100644
index 00000000000..086264f6364
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngineForMoka$1.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngineForMoka$1.class
new file mode 100644
index 00000000000..3522f66e25f
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngineForMoka$1.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngineForMoka.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngineForMoka.class
new file mode 100644
index 00000000000..a11f76f8362
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngineForMoka.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.class
new file mode 100644
index 00000000000..4c3d4a38990
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/CallActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/CallActionActivation.class
new file mode 100644
index 00000000000..a05d714ad5d
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/CallActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/CallBehaviorActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/CallBehaviorActionActivation.class
new file mode 100644
index 00000000000..e5c4a75f076
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/CallBehaviorActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/CallOperationActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/CallOperationActionActivation.class
new file mode 100644
index 00000000000..3d7f4e3e408
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/CallOperationActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/InputPinActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/InputPinActivation.class
new file mode 100644
index 00000000000..732ec28a9a0
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/InputPinActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/InvocationActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/InvocationActionActivation.class
new file mode 100644
index 00000000000..d28b7aca826
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/InvocationActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/OutputPinActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/OutputPinActivation.class
new file mode 100644
index 00000000000..ff2a0bd4281
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/OutputPinActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/PinActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/PinActivation.class
new file mode 100644
index 00000000000..61c8398b9b4
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/PinActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/SendSignalActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/SendSignalActionActivation.class
new file mode 100644
index 00000000000..8eb325b3dc4
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/SendSignalActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.class
new file mode 100644
index 00000000000..243af9c6825
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionEventAccepter.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionEventAccepter.class
new file mode 100644
index 00000000000..9f9d1a7a491
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionEventAccepter.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReadExtentActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReadExtentActionActivation.class
new file mode 100644
index 00000000000..dec2d889fbb
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReadExtentActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReadIsClassifiedObjectActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReadIsClassifiedObjectActionActivation.class
new file mode 100644
index 00000000000..a4159c5e7e0
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReadIsClassifiedObjectActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReclassifyObjectActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReclassifyObjectActionActivation.class
new file mode 100644
index 00000000000..ea24f2a67c9
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReclassifyObjectActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReduceActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReduceActionActivation.class
new file mode 100644
index 00000000000..8eed980edc9
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/ReduceActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/StartClassifierBehaviorActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/StartClassifierBehaviorActionActivation.class
new file mode 100644
index 00000000000..3ee7aa01ae6
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/StartClassifierBehaviorActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/StartObjectBehaviorActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/StartObjectBehaviorActionActivation.class
new file mode 100644
index 00000000000..d00f42e5fab
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/StartObjectBehaviorActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/AddStructuralFeatureValueActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/AddStructuralFeatureValueActionActivation.class
new file mode 100644
index 00000000000..660f8981a48
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/AddStructuralFeatureValueActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ClearAssociationActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ClearAssociationActionActivation.class
new file mode 100644
index 00000000000..34d6d30f8e7
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ClearAssociationActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ClearStructuralFeatureActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ClearStructuralFeatureActionActivation.class
new file mode 100644
index 00000000000..27af2ebdc19
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ClearStructuralFeatureActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/CreateLinkActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/CreateLinkActionActivation.class
new file mode 100644
index 00000000000..f40cec1b790
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/CreateLinkActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/CreateObjectActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/CreateObjectActionActivation.class
new file mode 100644
index 00000000000..1d7f89ed05b
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/CreateObjectActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/DestroyLinkActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/DestroyLinkActionActivation.class
new file mode 100644
index 00000000000..bd9ecfa770a
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/DestroyLinkActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/DestroyObjectActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/DestroyObjectActionActivation.class
new file mode 100644
index 00000000000..28312800f71
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/DestroyObjectActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/LinkActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/LinkActionActivation.class
new file mode 100644
index 00000000000..626672d08c8
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/LinkActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ReadLinkActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ReadLinkActionActivation.class
new file mode 100644
index 00000000000..d31de8c9795
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ReadLinkActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ReadSelfActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ReadSelfActionActivation.class
new file mode 100644
index 00000000000..c4dca207d43
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ReadSelfActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ReadStructuralFeatureActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ReadStructuralFeatureActionActivation.class
new file mode 100644
index 00000000000..9be777dc535
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ReadStructuralFeatureActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/RemoveStructuralFeatureValueActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/RemoveStructuralFeatureValueActionActivation.class
new file mode 100644
index 00000000000..c3961992ae0
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/RemoveStructuralFeatureValueActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/StructuralFeatureActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/StructuralFeatureActionActivation.class
new file mode 100644
index 00000000000..3d051b9700f
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/StructuralFeatureActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/TestIdentityActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/TestIdentityActionActivation.class
new file mode 100644
index 00000000000..7ad070593a2
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/TestIdentityActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ValueSpecificationActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ValueSpecificationActionActivation.class
new file mode 100644
index 00000000000..55d9bbb8b65
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/ValueSpecificationActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/WriteLinkActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/WriteLinkActionActivation.class
new file mode 100644
index 00000000000..e797edbc247
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/WriteLinkActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/WriteStructuralFeatureActionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/WriteStructuralFeatureActionActivation.class
new file mode 100644
index 00000000000..fb8772da52f
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Actions/IntermediateActions/WriteStructuralFeatureActionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/ClauseActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/ClauseActivation.class
new file mode 100644
index 00000000000..d2e0240028e
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/ClauseActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/ConditionalNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/ConditionalNodeActivation.class
new file mode 100644
index 00000000000..226be830865
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/ConditionalNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/LoopNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/LoopNodeActivation.class
new file mode 100644
index 00000000000..00a12049fe2
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/LoopNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.class
new file mode 100644
index 00000000000..cbf0116f7dc
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/Values.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/Values.class
new file mode 100644
index 00000000000..e183393226c
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/Values.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionActivationGroup.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionActivationGroup.class
new file mode 100644
index 00000000000..bbe5ed69898
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionActivationGroup.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionNodeActivation.class
new file mode 100644
index 00000000000..4726a43f915
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.class
new file mode 100644
index 00000000000..d8f1b1b973d
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/TokenSet.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/TokenSet.class
new file mode 100644
index 00000000000..2c5b0f94d91
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/TokenSet.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityEdgeInstance.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityEdgeInstance.class
new file mode 100644
index 00000000000..79d81a353d6
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityEdgeInstance.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityExecution.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityExecution.class
new file mode 100644
index 00000000000..ac1ba4ba414
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityExecution.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityFinalNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityFinalNodeActivation.class
new file mode 100644
index 00000000000..0e19c16da2b
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityFinalNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivation.class
new file mode 100644
index 00000000000..bc517017e9c
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivationGroup.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivationGroup.class
new file mode 100644
index 00000000000..f4a6241c013
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivationGroup.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityParameterNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityParameterNodeActivation.class
new file mode 100644
index 00000000000..81be110839e
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityParameterNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlNodeActivation.class
new file mode 100644
index 00000000000..dd1414ccff7
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlToken.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlToken.class
new file mode 100644
index 00000000000..5620ad5045f
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlToken.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/DecisionNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/DecisionNodeActivation.class
new file mode 100644
index 00000000000..f851790c351
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/DecisionNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/FlowFinalNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/FlowFinalNodeActivation.class
new file mode 100644
index 00000000000..b33852d9358
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/FlowFinalNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkNodeActivation.class
new file mode 100644
index 00000000000..6e49d54f5c4
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkedToken.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkedToken.class
new file mode 100644
index 00000000000..ed0f9297d1e
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkedToken.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/InitialNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/InitialNodeActivation.class
new file mode 100644
index 00000000000..b8a50ac6bab
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/InitialNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/JoinNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/JoinNodeActivation.class
new file mode 100644
index 00000000000..a2f826a2ef1
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/JoinNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/MergeNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/MergeNodeActivation.class
new file mode 100644
index 00000000000..4d7c615a5b8
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/MergeNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ObjectNodeActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ObjectNodeActivation.class
new file mode 100644
index 00000000000..abb908b6e0b
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ObjectNodeActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ObjectToken.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ObjectToken.class
new file mode 100644
index 00000000000..d301d90bc30
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ObjectToken.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/Offer.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/Offer.class
new file mode 100644
index 00000000000..c6709e66eef
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/Offer.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/Token.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/Token.class
new file mode 100644
index 00000000000..61f7932c749
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/Token.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/BooleanValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/BooleanValue.class
new file mode 100644
index 00000000000..f43e653869d
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/BooleanValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/CompoundValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/CompoundValue.class
new file mode 100644
index 00000000000..f4b0a2dfa05
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/CompoundValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/DataValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/DataValue.class
new file mode 100644
index 00000000000..9d3f81147f6
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/DataValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/DispatchStrategy.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/DispatchStrategy.class
new file mode 100644
index 00000000000..2aa19e2821c
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/DispatchStrategy.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/EnumerationValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/EnumerationValue.class
new file mode 100644
index 00000000000..bc70ffc0df0
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/EnumerationValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Evaluation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Evaluation.class
new file mode 100644
index 00000000000..f73127b2cfd
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Evaluation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/ExtensionalValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/ExtensionalValue.class
new file mode 100644
index 00000000000..16221a1e242
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/ExtensionalValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/FeatureValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/FeatureValue.class
new file mode 100644
index 00000000000..b84437a5323
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/FeatureValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/InstanceValueEvaluation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/InstanceValueEvaluation.class
new file mode 100644
index 00000000000..9a93c5865af
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/InstanceValueEvaluation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/IntegerValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/IntegerValue.class
new file mode 100644
index 00000000000..16e9c87bc65
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/IntegerValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Link.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Link.class
new file mode 100644
index 00000000000..c637cdf9459
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Link.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralBooleanEvaluation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralBooleanEvaluation.class
new file mode 100644
index 00000000000..eda9202333b
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralBooleanEvaluation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralEvaluation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralEvaluation.class
new file mode 100644
index 00000000000..daf97f4a402
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralEvaluation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralIntegerEvaluation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralIntegerEvaluation.class
new file mode 100644
index 00000000000..8b19cb55b43
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralIntegerEvaluation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralNullEvaluation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralNullEvaluation.class
new file mode 100644
index 00000000000..aef28321c8a
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralNullEvaluation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralRealEvaluation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralRealEvaluation.class
new file mode 100644
index 00000000000..291b135e2ce
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralRealEvaluation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralStringEvaluation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralStringEvaluation.class
new file mode 100644
index 00000000000..58ebb3cf19b
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralStringEvaluation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralUnlimitedNaturalEvaluation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralUnlimitedNaturalEvaluation.class
new file mode 100644
index 00000000000..79753979ed5
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/LiteralUnlimitedNaturalEvaluation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Object_.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Object_.class
new file mode 100644
index 00000000000..a1898697063
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Object_.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/PrimitiveValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/PrimitiveValue.class
new file mode 100644
index 00000000000..09f65345a0f
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/PrimitiveValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/RealValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/RealValue.class
new file mode 100644
index 00000000000..862d8bd4fc3
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/RealValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/RedefinitionBasedDispatchStrategy.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/RedefinitionBasedDispatchStrategy.class
new file mode 100644
index 00000000000..614d331dc07
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/RedefinitionBasedDispatchStrategy.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Reference.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Reference.class
new file mode 100644
index 00000000000..67ef885d90a
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Reference.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/StringValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/StringValue.class
new file mode 100644
index 00000000000..b380f0b41ae
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/StringValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/StructuredValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/StructuredValue.class
new file mode 100644
index 00000000000..b4d73562d45
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/StructuredValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/UnlimitedNaturalValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/UnlimitedNaturalValue.class
new file mode 100644
index 00000000000..91948eb5502
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/UnlimitedNaturalValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Value.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Value.class
new file mode 100644
index 00000000000..42236acbdc8
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Value.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/BasicBehaviors/Execution.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/BasicBehaviors/Execution.class
new file mode 100644
index 00000000000..a0c5e126d8a
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/BasicBehaviors/Execution.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/BasicBehaviors/OpaqueBehaviorExecution.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/BasicBehaviors/OpaqueBehaviorExecution.class
new file mode 100644
index 00000000000..c54a2d7347a
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/BasicBehaviors/OpaqueBehaviorExecution.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/BasicBehaviors/ParameterValue.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/BasicBehaviors/ParameterValue.class
new file mode 100644
index 00000000000..8a8aae63807
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/BasicBehaviors/ParameterValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ArrivalSignal.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ArrivalSignal.class
new file mode 100644
index 00000000000..7d6d0564f48
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ArrivalSignal.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ClassifierBehaviorExecution.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ClassifierBehaviorExecution.class
new file mode 100644
index 00000000000..67555ad03b5
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ClassifierBehaviorExecution.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/EventAccepter.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/EventAccepter.class
new file mode 100644
index 00000000000..35ea608b3eb
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/EventAccepter.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/FIFOGetNextEventStrategy.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/FIFOGetNextEventStrategy.class
new file mode 100644
index 00000000000..38b1364e8e2
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/FIFOGetNextEventStrategy.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/GetNextEventStrategy.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/GetNextEventStrategy.class
new file mode 100644
index 00000000000..5449165ec11
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/GetNextEventStrategy.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ObjectActivation.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ObjectActivation.class
new file mode 100644
index 00000000000..080378307b1
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/ObjectActivation.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/SignalInstance.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/SignalInstance.class
new file mode 100644
index 00000000000..87d3057296e
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/CommonBehaviors/Communications/SignalInstance.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ChoiceStrategy.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ChoiceStrategy.class
new file mode 100644
index 00000000000..0c7222b6a9c
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ChoiceStrategy.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.class
new file mode 100644
index 00000000000..364a07461b3
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactoryL1.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactoryL1.class
new file mode 100644
index 00000000000..2ea74846290
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactoryL1.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Executor.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Executor.class
new file mode 100644
index 00000000000..9c48e4f9430
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Executor.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/FirstChoiceStrategy.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/FirstChoiceStrategy.class
new file mode 100644
index 00000000000..0725ec9ec2a
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/FirstChoiceStrategy.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Locus.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Locus.class
new file mode 100644
index 00000000000..2bb863aa712
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Locus.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/SemanticStrategy.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/SemanticStrategy.class
new file mode 100644
index 00000000000..a8483e93476
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/SemanticStrategy.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/SemanticVisitor.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/SemanticVisitor.class
new file mode 100644
index 00000000000..18b61866814
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/SemanticVisitor.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL2/ExecutionFactoryL2.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL2/ExecutionFactoryL2.class
new file mode 100644
index 00000000000..bbcb84eee2c
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL2/ExecutionFactoryL2.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL3/ExecutionFactoryL3.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL3/ExecutionFactoryL3.class
new file mode 100644
index 00000000000..c31a40ebbdc
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL3/ExecutionFactoryL3.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/debug/ControlDelegate.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/debug/ControlDelegate.class
new file mode 100644
index 00000000000..1766130986f
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/debug/ControlDelegate.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/debug/Debug.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/debug/Debug.class
new file mode 100644
index 00000000000..0c10915e1ef
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/debug/Debug.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/AbstractOpaqueBehaviorExecutionRegistry.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/AbstractOpaqueBehaviorExecutionRegistry.class
new file mode 100644
index 00000000000..e160db2a48b
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/AbstractOpaqueBehaviorExecutionRegistry.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/AbstractSystemServicesRegistry.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/AbstractSystemServicesRegistry.class
new file mode 100644
index 00000000000..a7a27c1b431
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/AbstractSystemServicesRegistry.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/DefaultSemanticStrategyRegistry.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/DefaultSemanticStrategyRegistry.class
new file mode 100644
index 00000000000..ab1bcc1073a
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/DefaultSemanticStrategyRegistry.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/IOpaqueBehaviorExecutionRegistry.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/IOpaqueBehaviorExecutionRegistry.class
new file mode 100644
index 00000000000..dc027d96555
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/IOpaqueBehaviorExecutionRegistry.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/ISemanticStrategyRegistry.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/ISemanticStrategyRegistry.class
new file mode 100644
index 00000000000..1b62a9e1a21
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/ISemanticStrategyRegistry.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/ISystemServicesRegistry.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/ISystemServicesRegistry.class
new file mode 100644
index 00000000000..18fb3beff13
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/ISystemServicesRegistry.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/SystemServicesRegistryUtils.class b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/SystemServicesRegistryUtils.class
new file mode 100644
index 00000000000..2c66ae851e9
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/bin/org/eclipse/papyrus/moka/fuml/registry/SystemServicesRegistryUtils.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.java
index 644aa86368d..8a4cbf5b969 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/ActionActivation.java
@@ -17,6 +17,7 @@ import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+import org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityEdgeInstance;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityNodeActivation;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ControlToken;
@@ -27,7 +28,6 @@ import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.BooleanValue;
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.FeatureValue;
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Link;
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Value;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
import org.eclipse.papyrus.moka.fuml.debug.Debug;
import org.eclipse.uml2.uml.Action;
import org.eclipse.uml2.uml.ActivityNode;
@@ -90,7 +90,8 @@ public abstract class ActionActivation extends ActivityNodeActivation {
InputPin pin = i.next();
PinActivation pinActivation = this.getPinActivation(pin);
List<Token> tokens = pinActivation.takeOfferedTokens();
- pinActivation.fire(tokens);
+ if (FUMLExecutionEngine.eInstance.getControlDelegate().control(pinActivation)) // Added for connection with debug API
+ pinActivation.fire(tokens);
for(int j = 0; j < tokens.size(); j++) {
Token token = tokens.get(j);
offeredTokens.add(token);
@@ -100,12 +101,6 @@ public abstract class ActionActivation extends ActivityNodeActivation {
}
public void fire(List<Token> incomingTokens) {
- super.fire(incomingTokens) ;
- Locus locus = this.getExecutionLocus() ;
- if (locus.isInDebugMode) {
- if (locus.engine.isTerminated())
- return ;
- }
// Do the main action behavior then concurrently fire all output pin
// activations
// and offer a single control token. Then activate the action again,
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/OutputPinActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/OutputPinActivation.java
index 42df9fb586a..7644198630d 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/OutputPinActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/OutputPinActivation.java
@@ -13,79 +13,5 @@
*****************************************************************************/
package org.eclipse.papyrus.moka.fuml.Semantics.Actions.BasicActions;
-import java.util.List;
-
-import org.eclipse.papyrus.infra.core.Activator;
-import org.eclipse.papyrus.moka.MokaConstants;
-import org.eclipse.papyrus.moka.communication.event.isuspendresume.Suspend_Event;
-import org.eclipse.papyrus.moka.debug.MokaStackFrame;
-import org.eclipse.papyrus.moka.debug.MokaThread;
-import org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine;
-import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.Token;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
-import org.eclipse.papyrus.moka.fuml.debug.StackFrameManager;
-import org.eclipse.papyrus.moka.fuml.presentation.FUMLPresentationUtils;
-import org.eclipse.papyrus.moka.ui.presentation.AnimationUtils;
-import org.eclipse.uml2.uml.ActivityNode;
-
public class OutputPinActivation extends PinActivation {
-
- /**
- * Overriding introduced to connect with the debug API
- *
- * (non-Javadoc)
- * @see org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ObjectNodeActivation#sendOffers(java.util.List)
- */
- @Override
- public void sendOffers(List<Token> tokens) {
- // Connection with the debug api
- Locus locus = this.getActivityExecution().locus ;
- if (locus.isInDebugMode) {
- this.incomingTokens_DEBUG = tokens ;
- if (locus.engine.isTerminated())
- return ;
- boolean animationMarkerNeedsToBeRemoved = false ;
- long date = 0 ;
- if (MokaConstants.MOKA_AUTOMATIC_ANIMATION) {
- date = System.currentTimeMillis() ;
- AnimationUtils.getInstance().addAnimationMarker(node) ;
- animationMarkerNeedsToBeRemoved = true ;
- }
- MokaStackFrame stackFrame = FUMLPresentationUtils.getMokaStackFrame(this) ;
- stackFrame.setThread(locus.mainThread) ;
- StackFrameManager.getInstance().setStackFrame(this.getActivityExecution(), stackFrame) ;
- //locus.stackFrames = new MokaStackFrame[]{stackFrame} ;
- int reasonForSuspending = FUMLExecutionEngine.controlDelegate.shallSuspend(this.getActivityExecution(), this) ;
- if (reasonForSuspending != -1) {
- locus.mainThread.setSuspended(true) ;
- locus.mainThread.setStackFrames(null) ;
- locus.stackFrames = StackFrameManager.getInstance().getStackFrames() ;
- Suspend_Event breakpointEvent = new Suspend_Event(locus.mainThread, reasonForSuspending, new MokaThread[]{locus.mainThread}) ;
- locus.engine.sendEvent(breakpointEvent) ;
- try {
- FUMLExecutionEngine.controlDelegate.suspend(this.getActivityExecution()) ;
- } catch (InterruptedException e) {
- Activator.log.error(e);
- }
- locus.mainThread.setSuspended(false) ;
- }
- if (animationMarkerNeedsToBeRemoved) {
- try {
- long ellapsed = System.currentTimeMillis() - date ;
- long delay = Math.max(1,MokaConstants.MOKA_ANIMATION_DELAY - ellapsed) ;
- Thread.sleep(delay) ;
- } catch (InterruptedException e1) {
- Activator.log.error(e1);
- }
- AnimationUtils.getInstance().removeAnimationMarker(node) ;
- }
- if (locus.engine.isTerminated())
- return ;
- }
- // End: Connection with the debug api
- super.sendOffers(tokens);
- }
-
-
-
}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/PinActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/PinActivation.java
index d7843599b65..50c59386f3a 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/PinActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/BasicActions/PinActivation.java
@@ -19,7 +19,6 @@ import java.util.List;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityEdgeInstance;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ObjectNodeActivation;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.Token;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
import org.eclipse.papyrus.moka.fuml.debug.Debug;
import org.eclipse.uml2.uml.Pin;
@@ -31,12 +30,6 @@ public abstract class PinActivation extends ObjectNodeActivation {
public ActionActivation actionActivation;
public void fire(List<Token> incomingTokens) {
- super.fire(incomingTokens) ;
- Locus locus = this.getExecutionLocus() ;
- if (locus.isInDebugMode) {
- if (locus.engine.isTerminated())
- return ;
- }
// Add all incoming tokens to the pin.
Debug.println("[fire] Pin " + (this.node == null ? "" : this.node.getName() + "..."));
this.addTokens(incomingTokens);
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.java
index d119f42db48..4ffec9f5431 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Actions/CompleteActions/AcceptEventActionActivation.java
@@ -22,7 +22,6 @@ import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.FeatureValue;
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Value;
import org.eclipse.papyrus.moka.fuml.Semantics.CommonBehaviors.Communications.SignalInstance;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
import org.eclipse.uml2.uml.AcceptEventAction;
import org.eclipse.uml2.uml.OutputPin;
import org.eclipse.uml2.uml.Signal;
@@ -48,12 +47,6 @@ public class AcceptEventActionActivation extends ActionActivation {
}
public void fire(List<Token> incomingTokens) {
- super.fire(incomingTokens) ;
- Locus locus = this.getExecutionLocus() ;
- if (locus.isInDebugMode) {
- if (locus.engine.isTerminated())
- return ;
- }
// Register the event accepter for this accept event action activation
// with the context object of the enclosing activity execution
// and wait for an event to be accepted.
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.java
index dcc779150ab..5e5af7dd33d 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/CompleteStructuredActivities/StructuredActivityNodeActivation.java
@@ -17,6 +17,7 @@ import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
+import org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine;
import org.eclipse.papyrus.moka.fuml.Semantics.Actions.BasicActions.ActionActivation;
import org.eclipse.papyrus.moka.fuml.Semantics.Actions.BasicActions.PinActivation;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityEdgeInstance;
@@ -151,7 +152,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());
@@ -202,7 +203,8 @@ public class StructuredActivityNodeActivation extends ActionActivation {
// then finish its resumption.
List<Token> incomingTokens = super.completeAction();
if(incomingTokens.size() > 0) {
- this.fire(incomingTokens);
+ if (FUMLExecutionEngine.eInstance.getControlDelegate().control(this)) // Added for connection with debug API
+ this.fire(incomingTokens);
}
if(!this.isSuspended()) {
super.resume();
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionNodeActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionNodeActivation.java
index 4c99267ae0b..078ea787dc0 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionNodeActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionNodeActivation.java
@@ -18,19 +18,12 @@ import java.util.List;
import org.eclipse.papyrus.moka.fuml.debug.Debug;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ObjectNodeActivation;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.Token;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
import org.eclipse.uml2.uml.ExpansionNode;
import org.eclipse.uml2.uml.ExpansionRegion;
public class ExpansionNodeActivation extends ObjectNodeActivation {
public void fire(List<Token> incomingTokens) {
- super.fire(incomingTokens) ;
- Locus locus = this.getExecutionLocus() ;
- if (locus.isInDebugMode) {
- if (locus.engine.isTerminated())
- return ;
- }
// Take tokens from all incoming edges.
Debug.println("[fire] Expansion node " + this.node.getName() + "...");
this.addTokens(incomingTokens);
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.java
index ac64fe6a74a..593db2ff2c7 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/ExtraStructuredActivities/ExpansionRegionActivation.java
@@ -17,11 +17,12 @@ import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import org.eclipse.papyrus.moka.fuml.debug.Debug;
+import org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine;
import org.eclipse.papyrus.moka.fuml.Semantics.Actions.BasicActions.ActionActivation;
import org.eclipse.papyrus.moka.fuml.Semantics.Actions.BasicActions.OutputPinActivation;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityNodeActivationGroup;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.Token;
+import org.eclipse.papyrus.moka.fuml.debug.Debug;
import org.eclipse.uml2.uml.ExpansionKind;
import org.eclipse.uml2.uml.ExpansionNode;
import org.eclipse.uml2.uml.ExpansionRegion;
@@ -73,7 +74,8 @@ public class ExpansionRegionActivation extends ActionActivation {
for(int i = 0; i < inputElements.size(); i++) {
ExpansionNode inputElement = inputElements.get(i);
ExpansionNodeActivation expansionNodeActivation = this.getExpansionNodeActivation(inputElement);
- expansionNodeActivation.fire(expansionNodeActivation.takeOfferedTokens());
+ if (FUMLExecutionEngine.eInstance.getControlDelegate().control(expansionNodeActivation)) // Added for connection with debug API
+ expansionNodeActivation.fire(expansionNodeActivation.takeOfferedTokens());
List<Token> tokens = expansionNodeActivation.takeTokens();
TokenSet tokenSet = new TokenSet();
int j = 1;
@@ -206,7 +208,8 @@ public class ExpansionRegionActivation extends ActionActivation {
_beginIsolation();
for(int j = 0; j < groupOutputs.size(); j++) {
OutputPinActivation groupOutput = groupOutputs.get(j);
- groupOutput.fire(groupOutput.takeOfferedTokens());
+ if (FUMLExecutionEngine.eInstance.getControlDelegate().control(groupOutput)) // Added for connection with debug API
+ groupOutput.fire(groupOutput.takeOfferedTokens());
}
activationGroup.terminateAll();
_endIsolation();
@@ -263,7 +266,8 @@ public class ExpansionRegionActivation extends ActionActivation {
List<OutputPinActivation> groupOutputs = activationGroup.groupOutputs;
for(int i = 0; i < groupOutputs.size(); i++) {
OutputPinActivation groupOutput = groupOutputs.get(i);
- groupOutput.fire(groupOutput.takeOfferedTokens());
+ if (FUMLExecutionEngine.eInstance.getControlDelegate().control(groupOutput)) // Added for connection with debug API
+ groupOutput.fire(groupOutput.takeOfferedTokens());
}
activationGroup.terminateAll();
}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityEdgeInstance.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityEdgeInstance.java
index 56c3ee900df..b6d701991c5 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityEdgeInstance.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityEdgeInstance.java
@@ -16,16 +16,6 @@ package org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivitie
import java.util.ArrayList;
import java.util.List;
-import org.eclipse.papyrus.infra.core.Activator;
-import org.eclipse.papyrus.moka.MokaConstants;
-import org.eclipse.papyrus.moka.communication.event.isuspendresume.Suspend_Event;
-import org.eclipse.papyrus.moka.debug.MokaStackFrame;
-import org.eclipse.papyrus.moka.debug.MokaThread;
-import org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
-import org.eclipse.papyrus.moka.fuml.debug.StackFrameManager;
-import org.eclipse.papyrus.moka.fuml.presentation.FUMLPresentationUtils;
-import org.eclipse.papyrus.moka.ui.presentation.AnimationUtils;
import org.eclipse.uml2.uml.ActivityEdge;
public class ActivityEdgeInstance {
@@ -69,57 +59,6 @@ public class ActivityEdgeInstance {
offer.offeredTokens.add(token);
}
this.offers.add(offer);
-
- // Connection with the debug api
- if (this.group != null) { // TODO : Understand why group may be null
- Locus locus = this.group.getActivityExecution().locus ;
- if (locus.isInDebugMode) {
- if (locus.engine.isTerminated())
- return ;
- boolean animationMarkerNeedsToBeRemoved = false ;
- long date = 0 ;
- if (MokaConstants.MOKA_AUTOMATIC_ANIMATION) {
- date = System.currentTimeMillis() ;
- AnimationUtils.getInstance().addAnimationMarker(edge) ;
- animationMarkerNeedsToBeRemoved = true ;
- }
- MokaStackFrame stackFrame = FUMLPresentationUtils.getMokaStackFrame(this) ;
- //stackFrame.setModelElement(this.edge) ;
- stackFrame.setThread(locus.mainThread) ;
- stackFrame.setName(this.edge.getName()) ;
- StackFrameManager.getInstance().setStackFrame(this.group.getActivityExecution(), stackFrame) ;
- int reasonForSuspending = FUMLExecutionEngine.controlDelegate.shallSuspend(this.group.getActivityExecution(), this) ;
- if (reasonForSuspending != -1) {
- locus.mainThread.setSuspended(true) ;
- locus.mainThread.setStackFrames(null) ;
- //locus.stackFrames = new MokaStackFrame[]{stackFrame} ;
- locus.stackFrames = StackFrameManager.getInstance().getStackFrames() ;
- Suspend_Event breakpointEvent = new Suspend_Event(locus.mainThread, reasonForSuspending, new MokaThread[]{locus.mainThread}) ;
- locus.engine.sendEvent(breakpointEvent) ;
- try {
- FUMLExecutionEngine.controlDelegate.suspend(this.group.getActivityExecution()) ;
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- locus.mainThread.setSuspended(false) ;
- }
- if (animationMarkerNeedsToBeRemoved) {
- try {
- long ellapsed = System.currentTimeMillis() - date ;
- long delay = Math.max(1,MokaConstants.MOKA_ANIMATION_DELAY - ellapsed) ;
- Thread.sleep(delay) ;
- } catch (InterruptedException e1) {
- Activator.log.error(e1);
- }
- AnimationUtils.getInstance().removeAnimationMarker(edge) ;
- }
- if (locus.engine.isTerminated())
- return ;
- }
- }
-
- // End: Connection with the debug api
-
this.target.receiveOffer();
}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityExecution.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityExecution.java
index 5d4ec8b35a8..4703d817724 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityExecution.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityExecution.java
@@ -15,11 +15,10 @@ package org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivitie
import java.util.List;
+import org.eclipse.papyrus.moka.fuml.debug.Debug;
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Value;
import org.eclipse.papyrus.moka.fuml.Semantics.CommonBehaviors.BasicBehaviors.Execution;
import org.eclipse.papyrus.moka.fuml.Semantics.CommonBehaviors.BasicBehaviors.ParameterValue;
-import org.eclipse.papyrus.moka.fuml.debug.Debug;
-import org.eclipse.papyrus.moka.fuml.debug.StackFrameManager;
import org.eclipse.uml2.uml.Activity;
import org.eclipse.uml2.uml.ActivityParameterNode;
@@ -62,8 +61,6 @@ public class ActivityExecution extends Execution {
}
this.setParameterValue(parameterValue);
}
- // Statement added for connection with the DebugAPI
- StackFrameManager.getInstance().popActivityExecution() ;
Debug.println("[execute] Activity " + activity.getName() + " completed.");
}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityFinalNodeActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityFinalNodeActivation.java
index f007a76e0aa..98989e8e4c9 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityFinalNodeActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityFinalNodeActivation.java
@@ -17,17 +17,10 @@ import java.util.List;
import org.eclipse.papyrus.moka.fuml.debug.Debug;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.ExtraStructuredActivities.ExpansionActivationGroup;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
public class ActivityFinalNodeActivation extends ControlNodeActivation {
public void fire(List<Token> incomingTokens) {
- super.fire(incomingTokens) ;
- Locus locus = this.getExecutionLocus() ;
- if (locus.isInDebugMode) {
- if (locus.engine.isTerminated())
- return ;
- }
// Terminate the activity execution or structured node activation
// containing this activation.
Debug.println("[fire] Activity final node " + this.node.getName() + "...");
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivation.java
index d1bf5f9a1cf..5a82c7e6ca5 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityNodeActivation.java
@@ -17,19 +17,11 @@ import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
-import org.eclipse.papyrus.infra.core.Activator;
-import org.eclipse.papyrus.moka.MokaConstants;
-import org.eclipse.papyrus.moka.communication.event.isuspendresume.Suspend_Event;
-import org.eclipse.papyrus.moka.debug.MokaStackFrame;
-import org.eclipse.papyrus.moka.debug.MokaThread;
import org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine;
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Object_;
import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.SemanticVisitor;
import org.eclipse.papyrus.moka.fuml.debug.Debug;
-import org.eclipse.papyrus.moka.fuml.debug.StackFrameManager;
-import org.eclipse.papyrus.moka.fuml.presentation.FUMLPresentationUtils;
-import org.eclipse.papyrus.moka.ui.presentation.AnimationUtils;
import org.eclipse.uml2.uml.ActivityNode;
public abstract class ActivityNodeActivation extends SemanticVisitor {
@@ -89,7 +81,8 @@ public abstract class ActivityNodeActivation extends SemanticVisitor {
}
_endIsolation();
if(ready) {
- this.fire(tokens);
+ if (FUMLExecutionEngine.eInstance.getControlDelegate().control(this)) // Added for connection with debug API
+ this.fire(tokens);
}
}
@@ -108,58 +101,7 @@ public abstract class ActivityNodeActivation extends SemanticVisitor {
return allTokens;
}
- // public abstract void fire(List<Token> incomingTokens);
-
- // This property is introduced for connection to the debug API
- public List<Token> incomingTokens_DEBUG ;
-
- public void fire(List<Token> incomingTokens) {
- Locus locus = this.getExecutionLocus() ;
- if (locus.isInDebugMode) {
- this.incomingTokens_DEBUG = incomingTokens ;
- if (locus.engine.isTerminated())
- return ;
- boolean animationMarkerNeedsToBeRemoved = false ;
- long date = 0 ;
- if (MokaConstants.MOKA_AUTOMATIC_ANIMATION) {
- date = System.currentTimeMillis() ;
- AnimationUtils.getInstance().addAnimationMarker(node) ;
- animationMarkerNeedsToBeRemoved = true ;
- }
- MokaStackFrame stackFrame = FUMLPresentationUtils.getMokaStackFrame(this) ;
- stackFrame.setThread(locus.mainThread) ;
- stackFrame.setName(this.node.getName()) ;
- StackFrameManager.getInstance().setStackFrame(this.getActivityExecution(), stackFrame) ;
- int reasonForSuspending = FUMLExecutionEngine.controlDelegate.shallSuspend(this.getActivityExecution(), this) ;
- if (reasonForSuspending != -1) {
- locus.mainThread.setSuspended(true) ;
- locus.mainThread.setStackFrames(null) ;
- //locus.stackFrames = new MokaStackFrame[]{stackFrame} ;
- locus.stackFrames = StackFrameManager.getInstance().getStackFrames() ;
- Suspend_Event breakpointEvent = new Suspend_Event(locus.mainThread, reasonForSuspending, new MokaThread[]{locus.mainThread}) ;
- locus.engine.sendEvent(breakpointEvent) ;
- try {
- FUMLExecutionEngine.controlDelegate.suspend(this.getActivityExecution()) ;
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- locus.mainThread.setSuspended(false) ;
- }
- if (animationMarkerNeedsToBeRemoved) {
- try {
- long ellapsed = System.currentTimeMillis() - date ;
- long delay = Math.max(1,MokaConstants.MOKA_ANIMATION_DELAY - ellapsed) ;
- Thread.sleep(delay) ;
- } catch (InterruptedException e1) {
- Activator.log.error(e1);
- }
- AnimationUtils.getInstance().removeAnimationMarker(node) ;
- }
- if (locus.engine.isTerminated())
- return ;
- }
- }
- //
+ public abstract void fire(List<Token> incomingTokens);
public void sendOffers(List<Token> tokens) {
// Send offers for the given set of tokens over all outgoing edges (if
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityParameterNodeActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityParameterNodeActivation.java
index 0f9c7d372bb..cec72d47226 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityParameterNodeActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ActivityParameterNodeActivation.java
@@ -18,19 +18,12 @@ import java.util.List;
import org.eclipse.papyrus.moka.fuml.debug.Debug;
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Value;
import org.eclipse.papyrus.moka.fuml.Semantics.CommonBehaviors.BasicBehaviors.ParameterValue;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
import org.eclipse.uml2.uml.ActivityParameterNode;
import org.eclipse.uml2.uml.Parameter;
public class ActivityParameterNodeActivation extends ObjectNodeActivation {
public void fire(List<Token> incomingTokens) {
- super.fire(incomingTokens) ;
- Locus locus = this.getExecutionLocus() ;
- if (locus.isInDebugMode) {
- if (locus.engine.isTerminated())
- return ;
- }
// If there are no incoming edges, this is an activation of an input
// activity parameter node.
// Get the values from the input parameter indicated by the activity
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlNodeActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlNodeActivation.java
index aca82d2b7f1..b33e1dd8adb 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlNodeActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ControlNodeActivation.java
@@ -15,18 +15,11 @@ package org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivitie
import java.util.List;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
import org.eclipse.papyrus.moka.fuml.debug.Debug;
public abstract class ControlNodeActivation extends ActivityNodeActivation {
public void fire(List<Token> incomingTokens) {
- super.fire(incomingTokens) ;
- Locus locus = this.getExecutionLocus() ;
- if (locus.isInDebugMode) {
- if (locus.engine.isTerminated())
- return ;
- }
// By default, offer all tokens on all outgoing edges.
if(this.node != null) {
Debug.println("[fire] Control node " + this.node.getName() + "...");
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/DecisionNodeActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/DecisionNodeActivation.java
index 5f54b89788a..c5c3fdc8f51 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/DecisionNodeActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/DecisionNodeActivation.java
@@ -16,20 +16,10 @@ package org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivitie
import java.util.ArrayList;
import java.util.List;
-import org.eclipse.papyrus.infra.core.Activator;
-import org.eclipse.papyrus.moka.MokaConstants;
-import org.eclipse.papyrus.moka.communication.event.isuspendresume.Suspend_Event;
-import org.eclipse.papyrus.moka.debug.MokaStackFrame;
-import org.eclipse.papyrus.moka.debug.MokaThread;
-import org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine;
import org.eclipse.papyrus.moka.fuml.debug.Debug;
-import org.eclipse.papyrus.moka.fuml.debug.StackFrameManager;
-import org.eclipse.papyrus.moka.fuml.presentation.FUMLPresentationUtils;
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Value;
import org.eclipse.papyrus.moka.fuml.Semantics.CommonBehaviors.BasicBehaviors.Execution;
import org.eclipse.papyrus.moka.fuml.Semantics.CommonBehaviors.BasicBehaviors.ParameterValue;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
-import org.eclipse.papyrus.moka.ui.presentation.AnimationUtils;
import org.eclipse.uml2.uml.ActivityEdge;
import org.eclipse.uml2.uml.Behavior;
import org.eclipse.uml2.uml.DecisionNode;
@@ -46,51 +36,6 @@ public class DecisionNodeActivation extends ControlNodeActivation {
public Execution decisionInputExecution;
public void fire(List<Token> incomingTokens) {
- // Inserted for connection with the debug api
- Locus locus = this.getExecutionLocus() ;
- if (locus.isInDebugMode) {
- boolean animationMarkerNeedsToBeRemoved = false ;
- long date = 0 ;
- this.incomingTokens_DEBUG = incomingTokens ;
- if (locus.engine.isTerminated())
- return ;
- if (MokaConstants.MOKA_AUTOMATIC_ANIMATION) {
- date = System.currentTimeMillis() ;
- AnimationUtils.getInstance().addAnimationMarker(node) ;
- animationMarkerNeedsToBeRemoved = true ;
- }
- MokaStackFrame stackFrame = FUMLPresentationUtils.getMokaStackFrame(this) ;
- stackFrame.setThread(locus.mainThread) ;
- stackFrame.setName(this.node.getName()) ;
- StackFrameManager.getInstance().setStackFrame(this.getActivityExecution(), stackFrame) ;
- int reasonForSuspending = FUMLExecutionEngine.controlDelegate.shallSuspend(this.getActivityExecution(), this) ;
- if (reasonForSuspending != -1) {
- locus.mainThread.setSuspended(true) ;
- locus.mainThread.setStackFrames(null) ;
- //locus.stackFrames = new MokaStackFrame[]{stackFrame} ;
- locus.stackFrames = StackFrameManager.getInstance().getStackFrames() ;
- Suspend_Event breakpointEvent = new Suspend_Event(locus.mainThread, reasonForSuspending, new MokaThread[]{locus.mainThread}) ;
- locus.engine.sendEvent(breakpointEvent) ;
- try {
- FUMLExecutionEngine.controlDelegate.suspend(this.getActivityExecution()) ;
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- locus.mainThread.setSuspended(false) ;
- }
- if (animationMarkerNeedsToBeRemoved) {
- try {
- long ellapsed = System.currentTimeMillis() - date ;
- long delay = Math.max(1,MokaConstants.MOKA_ANIMATION_DELAY - ellapsed) ;
- Thread.sleep(delay) ;
- } catch (InterruptedException e1) {
- Activator.log.error(e1);
- }
- AnimationUtils.getInstance().removeAnimationMarker(node) ;
- }
- if (locus.engine.isTerminated())
- return ;
- }
// Get the decision values and test them on each guard.
// Forward the offer over the edges for which the test succeeds.
Debug.println("[fire] Decision node " + this.node.getName() + "...");
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/FlowFinalNodeActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/FlowFinalNodeActivation.java
index f08df12bb25..06a1e88ac51 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/FlowFinalNodeActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/FlowFinalNodeActivation.java
@@ -15,18 +15,11 @@ package org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivitie
import java.util.List;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
import org.eclipse.papyrus.moka.fuml.debug.Debug;
public class FlowFinalNodeActivation extends ControlNodeActivation {
public void fire(List<Token> incomingTokens) {
- super.fire(incomingTokens) ;
- Locus locus = this.getExecutionLocus() ;
- if (locus.isInDebugMode) {
- if (locus.engine.isTerminated())
- return ;
- }
// Consume all incoming tokens.
Debug.println("[fire] Flow final node " + this.node.getName() + "...");
for(int i = 0; i < incomingTokens.size(); i++) {
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkNodeActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkNodeActivation.java
index 6f1f2852d32..b8da22f1e53 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkNodeActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/ForkNodeActivation.java
@@ -16,20 +16,11 @@ package org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivitie
import java.util.ArrayList;
import java.util.List;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
import org.eclipse.papyrus.moka.fuml.debug.Debug;
public class ForkNodeActivation extends ControlNodeActivation {
public void fire(List<Token> incomingTokens) {
- if (this.group != null) {
- super.fire(incomingTokens) ;
- Locus locus = this.getExecutionLocus() ;
- if (locus.isInDebugMode) {
- if (locus.engine.isTerminated())
- return ;
- }
- }
// Create forked tokens for all incoming tokens and offer them on all
// outgoing edges.
if(this.node == null) {
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/InitialNodeActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/InitialNodeActivation.java
index 51c40f7ac07..7445d40aaf7 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/InitialNodeActivation.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Activities/IntermediateActivities/InitialNodeActivation.java
@@ -16,17 +16,9 @@ package org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivitie
import java.util.ArrayList;
import java.util.List;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
-
public class InitialNodeActivation extends ControlNodeActivation {
public void fire(List<Token> incomingTokens) {
- super.fire(incomingTokens) ;
- Locus locus = this.getExecutionLocus() ;
- if (locus.isInDebugMode) {
- if (locus.engine.isTerminated())
- return ;
- }
// Create a single token and send offers for it.
List<Token> tokens = new ArrayList<Token>();
tokens.add(new ControlToken());
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Object_.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Object_.java
index 73cab0a4cbe..185bf42ba91 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Object_.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Classes/Kernel/Object_.java
@@ -123,8 +123,4 @@ public class Object_ extends ExtensionalValue {
}
return types;
}
-
- public String toString() {
- return this.objectId() ;
- }
}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.java
index 8d5599010cd..e5f9836fc70 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/ExecutionFactory.java
@@ -17,8 +17,6 @@ import java.util.ArrayList;
import java.util.List;
import org.eclipse.papyrus.moka.fuml.debug.Debug;
-import org.eclipse.papyrus.moka.fuml.debug.StackFrameManager;
-import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityExecution;
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Evaluation;
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Object_;
import org.eclipse.papyrus.moka.fuml.Semantics.CommonBehaviors.BasicBehaviors.Execution;
@@ -75,9 +73,6 @@ public abstract class ExecutionFactory {
} else {
execution.context = context;
}
- // Statement added for connection with the DebugAPI
- if (execution instanceof ActivityExecution)
- StackFrameManager.getInstance().pushActivityExecution((ActivityExecution)execution) ;
return execution;
}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Locus.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Locus.java
index 4926e675fac..a36a1d1539e 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Locus.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/generated/org/eclipse/papyrus/moka/fuml/Semantics/Loci/LociL1/Locus.java
@@ -16,43 +16,14 @@ package org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1;
import java.util.ArrayList;
import java.util.List;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.papyrus.moka.debug.MokaDebugTarget;
-import org.eclipse.papyrus.moka.debug.MokaStackFrame;
-import org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine;
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.ExtensionalValue;
import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Object_;
-import org.eclipse.papyrus.moka.fuml.debug.FumlThread;
import org.eclipse.uml2.uml.Behavior;
import org.eclipse.uml2.uml.Class;
import org.eclipse.uml2.uml.Classifier;
public class Locus {
-
- public boolean isInDebugMode = false ;
-
- public FUMLExecutionEngine engine ;
-
- public FumlThread mainThread ;
-
- public MokaStackFrame[] stackFrames ;
-
- public void initDebugInformation(String debugMode, FUMLExecutionEngine engine) {
- this.engine = engine ;
- Locus.debugTarget = engine.getDebugTarget() ;
- if (debugMode.equals(ILaunchManager.DEBUG_MODE)) {
- this.isInDebugMode = true ;
- this.mainThread = new FumlThread(engine.getDebugTarget()) ;
- this.mainThread.setName("Main thread") ;
- }
- }
-
- protected static MokaDebugTarget debugTarget ;
-
- public static MokaDebugTarget getDebugTarget() {
- return Locus.debugTarget ;
- }
-
+
/*
* The executor to be used at this locus.
*/
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/plugin.xml b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/plugin.xml
index d75db090b7b..9fc94322224 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/plugin.xml
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/plugin.xml
@@ -6,7 +6,7 @@
<extension
point="org.eclipse.papyrus.moka.engine">
<engine
- class="org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine">
+ class="org.eclipse.papyrus.moka.fuml.FUMLExecutionEngineForMoka">
</engine>
</extension>
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine.java
index 75e044022c7..b86c2d2c697 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngine.java
@@ -13,8 +13,6 @@
*****************************************************************************/
package org.eclipse.papyrus.moka.fuml;
-import java.io.IOException;
-import java.util.ArrayList;
import java.util.List;
import org.eclipse.core.runtime.CoreException;
@@ -23,35 +21,10 @@ import org.eclipse.core.runtime.IExtensionRegistry;
import org.eclipse.core.runtime.ISafeRunnable;
import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.SafeRunner;
-import org.eclipse.debug.core.ILaunchManager;
-import org.eclipse.debug.core.model.IStackFrame;
-import org.eclipse.debug.core.model.IThread;
import org.eclipse.emf.common.util.URI;
-import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.ResourceSet;
-import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
-import org.eclipse.emf.ecore.util.EcoreUtil;
-import org.eclipse.jface.viewers.ILabelProvider;
-import org.eclipse.papyrus.infra.core.Activator;
-import org.eclipse.papyrus.infra.core.resource.ModelSet;
-import org.eclipse.papyrus.infra.core.services.ServiceException;
-import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
-import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForResource;
-import org.eclipse.papyrus.infra.services.labelprovider.service.LabelProviderService;
-import org.eclipse.papyrus.moka.communication.request.isuspendresume.Resume_Request;
-import org.eclipse.papyrus.moka.communication.request.isuspendresume.Suspend_Request;
-import org.eclipse.papyrus.moka.communication.request.iterminate.Terminate_Request;
-import org.eclipse.papyrus.moka.debug.MokaBreakpoint;
-import org.eclipse.papyrus.moka.debug.MokaStackFrame;
-import org.eclipse.papyrus.moka.debug.MokaThread;
import org.eclipse.papyrus.moka.engine.AbstractExecutionEngine;
-import org.eclipse.papyrus.moka.engine.IExecutionEngine;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.BooleanValue;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.IntegerValue;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.StringValue;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.UnlimitedNaturalValue;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Value;
import org.eclipse.papyrus.moka.fuml.Semantics.CommonBehaviors.BasicBehaviors.ParameterValue;
import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Executor;
import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
@@ -60,21 +33,14 @@ import org.eclipse.papyrus.moka.fuml.debug.ControlDelegate;
import org.eclipse.papyrus.moka.fuml.registry.DefaultSemanticStrategyRegistry;
import org.eclipse.papyrus.moka.fuml.registry.IOpaqueBehaviorExecutionRegistry;
import org.eclipse.papyrus.moka.fuml.registry.ISystemServicesRegistry;
-import org.eclipse.papyrus.moka.launch.EditorUtils;
-import org.eclipse.papyrus.moka.ui.presentation.AnimationUtils;
import org.eclipse.papyrus.uml.extensionpoints.library.RegisteredLibrary;
import org.eclipse.papyrus.uml.extensionpoints.utils.Util;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.ui.IEditorPart;
import org.eclipse.uml2.uml.Behavior;
import org.eclipse.uml2.uml.Element;
import org.eclipse.uml2.uml.Package;
-import org.eclipse.uml2.uml.Parameter;
-import org.eclipse.uml2.uml.ParameterDirectionKind;
import org.eclipse.uml2.uml.PrimitiveType;
-import org.eclipse.uml2.uml.Type;
-public class FUMLExecutionEngine extends AbstractExecutionEngine implements IExecutionEngine {
+public abstract class FUMLExecutionEngine extends AbstractExecutionEngine {
protected final static String LIBRAY_EXTENSION_POINT_ID = "org.eclipse.papyrus.moka.fuml.library";
protected final static String SERVICES_EXTENSION_POINT_ID = "org.eclipse.papyrus.moka.fuml.services" ;
@@ -87,69 +53,9 @@ public class FUMLExecutionEngine extends AbstractExecutionEngine implements IExe
protected Locus locus ;
- public static ControlDelegate controlDelegate ;
-
protected boolean started = false ;
-
- protected static ServicesRegistry servicesRegistry ;
-
- protected static ILabelProvider labelProvider ;
-
- public static Image getImage(Object element) {
- try {
- if (element instanceof EObject && ((EObject)element).eIsProxy()) {
- labelProvider = null ;
- servicesRegistry = null ;
- }
- if (labelProvider == null) {
- if (servicesRegistry == null) {
- if (main.eIsProxy()) {
- IEditorPart part = EditorUtils.getEditorPart(main) ;
- ServicesRegistry servicesRegistry = (ServicesRegistry)part.getAdapter(ServicesRegistry.class);
- ResourceSet resourceSet = null ;
- try {
- resourceSet = servicesRegistry.getService(ModelSet.class) ;
- } catch (ServiceException e1) {
- resourceSet = new ResourceSetImpl() ;
- e1.printStackTrace();
- }
- main = (Behavior) EcoreUtil.resolve(main, resourceSet) ;
- }
- else {
- servicesRegistry = ServiceUtilsForResource.getInstance().getServiceRegistry(main.eResource());
- }
- }
- LabelProviderService labelProviderService = servicesRegistry.getService(LabelProviderService.class);
- labelProvider = labelProviderService.getLabelProvider() ;
- labelProvider.getImage(element) ;
- }
- return labelProvider.getImage(element) ;
- }
- catch (Exception e) {
- Activator.log.error(e) ;
- return null ;
- }
- }
-
- @Override
- public void initRun(EObject eObjectToExecute, String[] args) {
- super.initRun(eObjectToExecute, args);
- AnimationUtils.init() ;
- servicesRegistry = null ;
- labelProvider = null ;
- if (eObjectToExecute instanceof Behavior) {
- main = (Behavior)eObjectToExecute ;
- }
- if (this.mode.equals(ILaunchManager.DEBUG_MODE)) {
- this.debugTarget.setName("fUML Execution Engine") ;
- }
- }
-
- @Override
- public void start() throws IOException {
- controlDelegate = new ControlDelegate() ;
- super.start();
- }
+
+ public static FUMLExecutionEngine eInstance ;
// Starts the execution of the given behavior
protected void start(Behavior behavior) {
@@ -157,7 +63,6 @@ public class FUMLExecutionEngine extends AbstractExecutionEngine implements IExe
main = behavior;
// creates the locus, executor and execution factory
this.locus = new Locus();
- this.locus.engine = this ;
this.locus.setExecutor(new Executor());
this.locus.setFactory(new ExecutionFactoryL3());
// initializes built-in primitive types
@@ -170,12 +75,9 @@ public class FUMLExecutionEngine extends AbstractExecutionEngine implements IExe
this.registerSemanticStrategies(locus);
// Initializes arguments
this.initializeArguments(this.args) ;
- // sets the execution mode for the locus
- locus.initDebugInformation(this.mode, this) ;
// Finally launches the execution
+ this.started = true ;
this.locus.executor.execute(main, null,this.arguments);
- //
- this.isTerminated = true ;
}
}
@@ -271,150 +173,6 @@ public class FUMLExecutionEngine extends AbstractExecutionEngine implements IExe
SafeRunner.run(runnable);
}
-
- public boolean isDebugModeSupported() {
- return true;
- }
-
- public MokaThread[] getThreads() {
- if (this.locus == null)
- return new MokaThread[]{} ;
- // if (this.locus.mainThread == null) {
- // this.locus.initDebugInformation(this.mode, this) ;
- // }
- return new MokaThread[]{this.locus.mainThread} ;
- }
-
- @Override
- public void initializeArguments(String[] args) {
- if (this.locus == null) {
- this.args = args ;
- return ;
- }
-
- this.arguments = new ArrayList<ParameterValue>() ;
- if (this.args == null)
- return ;
-
- List<Value> tmpArgs = new ArrayList<Value>() ;
-
- // analyzes arguments versus parameters of the main behavior
- List<Parameter> parameters = main.getOwnedParameters() ;
- if (parameters == null)
- return ;
- List<Parameter> parametersWhichNeedArguments = new ArrayList<Parameter>() ;
- // There must be the same number of parameters (except the return parameter)
- for (Parameter p : parameters) {
- if (p.getDirection() != ParameterDirectionKind.RETURN_LITERAL)
- parametersWhichNeedArguments.add(p) ;
- }
- if (parametersWhichNeedArguments.size() != this.args.length)
- return ;
-
- // iterates of parameters, and tries to create tokens corresponding to arguments
- int i = 0 ;
- for (Parameter p : parametersWhichNeedArguments) {
- Type t = p.getType() ;
- if (t != null) {
- PrimitiveType pt = this.locus.factory.getBuiltInType(t.getName()) ;
- if (pt == null)
- return ;
- if (pt.getName().equals("Integer")) {
- IntegerValue value = new IntegerValue() ;
- value.value = new Integer(this.args[i]) ;
- tmpArgs.add(value) ;
- }
- else if (pt.getName().equals("String")) {
- StringValue value = new StringValue() ;
- value.value = this.args[i] ;
- tmpArgs.add(value) ;
- }
- else if (pt.getName().equals("Boolean")) {
- BooleanValue value = new BooleanValue() ;
- value.value = new Boolean(this.args[i]) ;
- tmpArgs.add(value) ;
- }
- else if (pt.getName().equals("UnlimitedNatural")) {
- UnlimitedNaturalValue value = new UnlimitedNaturalValue() ;
- value.value = new Integer(args[i]) ;
- tmpArgs.add(value) ;
- }
- else {
- return ; // Unsupported type. TODO Consider Real
- }
- }
- i++ ;
- }
-
- i = 0 ;
- // creates actual arguments
- for (Value v : tmpArgs) {
- ParameterValue arg = new ParameterValue() ;
- arg.parameter = parameters.get(i) ;
- arg.values = new ArrayList<Value>() ;
- arg.values.add(v) ;
- this.arguments.add(arg) ;
- i++ ;
- }
- }
-
- @Override
- public void addBreakpoint(MokaBreakpoint breakpoint) {
- controlDelegate.addBreakpoint(breakpoint) ;
- }
-
- @Override
- public void removeBreakpoint(MokaBreakpoint breakpoint) {
- controlDelegate.removeBreakpoint(breakpoint) ;
- }
-
- @Override
- public void disconnect() {
- // Does nothing
- }
-
- @Override
- public void resume(Resume_Request request) {
- if (!this.started) {
- this.started = true ;
- Runnable execution = new Runnable() {
- public void run() {
- if (main != null) {
- start(main) ;
- }
- }
- };
- Thread mainThread = new Thread(execution) ;
- mainThread.start() ;
- }
- else {
- locus.mainThread.setStackFrames(new IStackFrame[]{}) ;
- controlDelegate.resume(request) ;
- }
- }
-
- @Override
- public void resume() {
- if (main != null)
- this.start(main);
- }
-
- @Override
- public void suspend(Suspend_Request request) {
- controlDelegate.handleSuspendRequest() ;
- }
-
- @Override
- public void terminate(Terminate_Request request) {
- this.isTerminated = true ;
- controlDelegate.handleTerminateRequest() ;
- }
-
- @Override
- public IStackFrame[] getStackFrames(IThread thread) {
- if (this.locus.stackFrames == null)
- this.locus.stackFrames = new MokaStackFrame[]{} ;
- return this.locus.stackFrames ;
- }
-
+ public abstract ControlDelegate getControlDelegate() ;
+
}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngineForMoka.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngineForMoka.java
new file mode 100644
index 00000000000..b250f3f5657
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/FUMLExecutionEngineForMoka.java
@@ -0,0 +1,200 @@
+package org.eclipse.papyrus.moka.fuml;
+
+import java.io.IOException;
+import java.net.UnknownHostException;
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.debug.core.DebugException;
+import org.eclipse.debug.core.model.IStackFrame;
+import org.eclipse.debug.core.model.IThread;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.infra.core.Activator;
+import org.eclipse.papyrus.moka.communication.request.isuspendresume.Resume_Request;
+import org.eclipse.papyrus.moka.communication.request.isuspendresume.Suspend_Request;
+import org.eclipse.papyrus.moka.communication.request.iterminate.Terminate_Request;
+import org.eclipse.papyrus.moka.debug.MokaBreakpoint;
+import org.eclipse.papyrus.moka.debug.MokaDebugTarget;
+import org.eclipse.papyrus.moka.debug.MokaThread;
+import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.BooleanValue;
+import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.IntegerValue;
+import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.StringValue;
+import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.UnlimitedNaturalValue;
+import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Value;
+import org.eclipse.papyrus.moka.fuml.Semantics.CommonBehaviors.BasicBehaviors.ParameterValue;
+import org.eclipse.papyrus.moka.fuml.debug.ControlDelegate;
+import org.eclipse.uml2.uml.Behavior;
+import org.eclipse.uml2.uml.Parameter;
+import org.eclipse.uml2.uml.ParameterDirectionKind;
+import org.eclipse.uml2.uml.PrimitiveType;
+import org.eclipse.uml2.uml.Type;
+
+public class FUMLExecutionEngineForMoka extends FUMLExecutionEngine {
+
+ protected ControlDelegate controlDelegate ;
+
+ /* (non-Javadoc)
+ * @see org.eclipse.papyrus.moka.engine.AbstractExecutionEngine#init(org.eclipse.emf.ecore.EObject, java.lang.String[], org.eclipse.papyrus.moka.debug.MokaDebugTarget, int, int, int)
+ */
+ @Override
+ public void init(EObject eObjectToExecute, String[] args, MokaDebugTarget debugTarget, int requestPort, int replyPort, int eventPort) throws UnknownHostException, IOException {
+ super.init(eObjectToExecute, args, debugTarget, requestPort, replyPort, eventPort);
+ if (eObjectToExecute instanceof Behavior) {
+ main = (Behavior)eObjectToExecute ;
+ this.debugTarget = debugTarget ;
+ this.debugTarget.setName("FUML Execution Engine") ;
+ FUMLExecutionEngine.eInstance = this ;
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.papyrus.moka.engine.AbstractExecutionEngine#initializeArguments(java.lang.String[])
+ */
+ @Override
+ public void initializeArguments(String[] args) {
+ this.args = args ;
+ if (this.locus == null) {
+ return ;
+ }
+
+ this.arguments = new ArrayList<ParameterValue>() ;
+ if (this.args == null)
+ return ;
+
+ List<Value> tmpArgs = new ArrayList<Value>() ;
+
+ // analyzes arguments versus parameters of the main behavior
+ List<Parameter> parameters = main.getOwnedParameters() ;
+ if (parameters == null)
+ return ;
+ List<Parameter> parametersWhichNeedArguments = new ArrayList<Parameter>() ;
+ // There must be the same number of parameters (except the return parameter)
+ for (Parameter p : parameters) {
+ if (p.getDirection() != ParameterDirectionKind.RETURN_LITERAL)
+ parametersWhichNeedArguments.add(p) ;
+ }
+ if (parametersWhichNeedArguments.size() != this.args.length)
+ return ;
+
+ // iterates on parameters, and tries to create tokens corresponding to arguments
+ int i = 0 ;
+ for (Parameter p : parametersWhichNeedArguments) {
+ Type t = p.getType() ;
+ if (t != null) {
+ PrimitiveType pt = this.locus.factory.getBuiltInType(t.getName()) ;
+ if (pt == null)
+ return ;
+ if (pt.getName().equals("Integer")) {
+ IntegerValue value = new IntegerValue() ;
+ value.value = new Integer(this.args[i]) ;
+ tmpArgs.add(value) ;
+ }
+ else if (pt.getName().equals("String")) {
+ StringValue value = new StringValue() ;
+ value.value = this.args[i] ;
+ tmpArgs.add(value) ;
+ }
+ else if (pt.getName().equals("Boolean")) {
+ BooleanValue value = new BooleanValue() ;
+ value.value = new Boolean(this.args[i]) ;
+ tmpArgs.add(value) ;
+ }
+ else if (pt.getName().equals("UnlimitedNatural")) {
+ UnlimitedNaturalValue value = new UnlimitedNaturalValue() ;
+ value.value = new Integer(args[i]) ;
+ tmpArgs.add(value) ;
+ }
+ else {
+ return ; // Unsupported type. TODO Consider Real
+ }
+ }
+ i++ ;
+ }
+
+ i = 0 ;
+ // creates actual arguments
+ for (Value v : tmpArgs) {
+ ParameterValue arg = new ParameterValue() ;
+ arg.parameter = parameters.get(i) ;
+ arg.values = new ArrayList<Value>() ;
+ arg.values.add(v) ;
+ this.arguments.add(arg) ;
+ i++ ;
+ }
+ }
+
+ public ControlDelegate getControlDelegate() {
+ if (this.controlDelegate == null)
+ this.controlDelegate = new ControlDelegate(this) ;
+ return this.controlDelegate ;
+ }
+
+ @Override
+ public void addBreakpoint(MokaBreakpoint breakpoint) {
+ this.getControlDelegate().addBreakpoint(breakpoint) ;
+ }
+
+ @Override
+ public void removeBreakpoint(MokaBreakpoint breakpoint) {
+ this.getControlDelegate().removeBreakpoint(breakpoint) ;
+ }
+
+ @Override
+ public void disconnect() {
+ // Do nothing
+ }
+
+ @Override
+ public void resume(Resume_Request request) {
+ if (!this.started) {
+ Runnable execution = new Runnable() {
+ public void run() {
+ if (main != null) {
+ start(main) ;
+ if (! isTerminated()) {
+ try {
+ getDebugTarget().terminate() ;
+ } catch (DebugException e) {
+ Activator.log.error(e);
+ }
+ }
+ }
+ }
+ };
+ Thread mainThread = new Thread(execution) ;
+ mainThread.start() ;
+ }
+ else {
+ this.getControlDelegate().resume(request) ;
+ }
+ }
+
+ @Override
+ public void suspend(Suspend_Request request) {
+ this.getControlDelegate().suspend(request) ;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.papyrus.moka.engine.AbstractExecutionEngine#terminate(org.eclipse.papyrus.moka.communication.request.iterminate.Terminate_Request)
+ */
+ @Override
+ public void terminate(Terminate_Request request) {
+ this.getControlDelegate().terminate(request) ;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.papyrus.moka.engine.IExecutionEngine#getThreads()
+ */
+ public MokaThread[] getThreads() {
+ return this.getControlDelegate().getThreads() ;
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.papyrus.moka.engine.AbstractExecutionEngine#getStackFrames(org.eclipse.debug.core.model.IThread)
+ */
+ @Override
+ public IStackFrame[] getStackFrames(IThread thread) {
+ return this.getControlDelegate().getStackFrames(thread) ;
+ }
+
+}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/ControlDelegate.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/ControlDelegate.java
index f51c3f0734f..64a80b13cc9 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/ControlDelegate.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/ControlDelegate.java
@@ -4,102 +4,213 @@ import java.util.ArrayList;
import java.util.List;
import org.eclipse.debug.core.DebugEvent;
-import org.eclipse.debug.core.DebugPlugin;
-import org.eclipse.emf.ecore.EValidator;
-import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.debug.core.ILaunchManager;
+import org.eclipse.debug.core.model.IStackFrame;
+import org.eclipse.debug.core.model.IThread;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.infra.core.Activator;
+import org.eclipse.papyrus.moka.MokaConstants;
+import org.eclipse.papyrus.moka.communication.event.isuspendresume.Suspend_Event;
import org.eclipse.papyrus.moka.communication.request.isuspendresume.Resume_Request;
+import org.eclipse.papyrus.moka.communication.request.isuspendresume.Suspend_Request;
+import org.eclipse.papyrus.moka.communication.request.iterminate.Terminate_Request;
import org.eclipse.papyrus.moka.debug.MokaBreakpoint;
+import org.eclipse.papyrus.moka.debug.MokaStackFrame;
+import org.eclipse.papyrus.moka.debug.MokaThread;
+import org.eclipse.papyrus.moka.debug.MokaVariable;
+import org.eclipse.papyrus.moka.engine.AbstractExecutionEngine;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityEdgeInstance;
-import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityExecution;
import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityNodeActivation;
+import org.eclipse.papyrus.moka.ui.presentation.AnimationUtils;
+import org.eclipse.uml2.uml.Action;
+import org.eclipse.uml2.uml.ActivityEdge;
+import org.eclipse.uml2.uml.ActivityNode;
+import org.eclipse.uml2.uml.InputPin;
+import org.eclipse.uml2.uml.Pin;
public class ControlDelegate {
- protected boolean suspendRequestedByCLient = false ;
+ /**
+ *
+ */
+ protected AbstractExecutionEngine engine ;
- protected ActivityExecution lastSuspendedActivityExecution ;
+ protected List<MokaThread> threads ;
- public synchronized void suspend(ActivityExecution execution) throws InterruptedException {
- this.lastSuspendedActivityExecution = execution ;
- wait();
+ protected boolean suspended = false ;
+
+ protected String mode ;
+
+ public ControlDelegate(AbstractExecutionEngine engine) {
+ this.engine = engine ;
+ this.mode = this.engine.getDebugTarget().getLaunch().getLaunchMode() ;
}
- protected int reasonForResume ;
+ public void addBreakpoint(MokaBreakpoint breakpoint) {
+ // TODO Auto-generated method stub
+ }
- public synchronized void resume(Resume_Request request) {
- this.suspendRequestedByCLient = false ;
- this.reasonForResume = request.getResumeDetail() ;
- notify() ;
+ public void removeBreakpoint(MokaBreakpoint breakpoint) {
+ // TODO Auto-generated method stub
}
- public int shallSuspend(ActivityExecution execution, Object activityNodeActiviationOrActivityEdgeInstance) {
- // first checks if a suspend request has been emitted from client
- if (this.suspendRequestedByCLient)
- return DebugEvent.CLIENT_REQUEST ;
- // then check if a breakpoint applies
- if (DebugPlugin.getDefault().getBreakpointManager().isEnabled()) {
- if (activityNodeActiviationOrActivityEdgeInstance instanceof ActivityNodeActivation) {
- ActivityNodeActivation nodeActivation = (ActivityNodeActivation)activityNodeActiviationOrActivityEdgeInstance ;
- if (nodeActivation.node != null) {
- //String uri = EcoreUtil.getURI(nodeActivation.node).toString() ;
- if (this.urisOfObjectWithBreakpoints.contains(EcoreUtil.getURI(nodeActivation.node).toString()))
- return DebugEvent.BREAKPOINT ;
- }
- }
- if (activityNodeActiviationOrActivityEdgeInstance instanceof ActivityEdgeInstance) {
- ActivityEdgeInstance edgeInstance = (ActivityEdgeInstance)activityNodeActiviationOrActivityEdgeInstance ;
- if (edgeInstance.edge != null)
- if (this.urisOfObjectWithBreakpoints.contains(EcoreUtil.getURI(edgeInstance.edge).toString()))
- return DebugEvent.BREAKPOINT ;
- }
- }
- int shallSuspend = -1 ;
- switch (this.reasonForResume) {
- case DebugEvent.CLIENT_REQUEST :
- shallSuspend = -1 ;
- break;
- case DebugEvent.STEP_INTO :
- shallSuspend = DebugEvent.STEP_END ;
- break;
- case DebugEvent.STEP_OVER :
- if (! (StackFrameManager.getInstance().contains(execution) && StackFrameManager.getInstance().contains(lastSuspendedActivityExecution)))
- shallSuspend = DebugEvent.STEP_END ;
- else
- shallSuspend = (execution == lastSuspendedActivityExecution) ? DebugEvent.STEP_END : -1;
- break;
- case DebugEvent.STEP_RETURN :
- shallSuspend = StackFrameManager.getInstance().isBefore(execution, lastSuspendedActivityExecution) ? DebugEvent.STEP_END : -1;
- break;
- default:
- break;
+ public void resume(Resume_Request request) {
+ this.suspended = false ;
+ this.getThreads()[0].setSuspended(false) ;
+ synchronized (this) {
+ notify() ;
+ this.threads.get(0).setStackFrames(new IStackFrame[]{}) ;
}
- return shallSuspend ;
}
- public void handleSuspendRequest() {
- this.suspendRequestedByCLient = true ;
+ public IStackFrame[] getStackFrames(IThread thread) {
+ // Never called in this implementation
+ // When the debug is notified, threads are already constructed with appropriate stack frames.
+ return null;
+ }
+
+ public void suspend(Suspend_Request request) {
+ this.suspended = true ;
+ this.getThreads()[0].setSuspended(true) ;
+ }
+
+ public MokaThread[] getThreads() {
+ if (this.threads == null) {
+ this.threads = new ArrayList<MokaThread>() ;
+ if (this.engine.getDebugTarget().getLaunch().getLaunchMode().equals(ILaunchManager.DEBUG_MODE)) {
+ MokaThread thread = new MokaThread(this.engine.getDebugTarget()) ;
+ thread.setName("Main Thread") ;
+ thread.setStackFrames(new IStackFrame[]{}) ;
+ this.threads.add(thread) ;
+ }
+ }
+ return threads.toArray(new MokaThread[threads.size()]) ;
}
- public synchronized void handleTerminateRequest() {
- notify() ;
+ /**
+ * Method that can be called by a particular execution engine to delegate control of execution flow.
+ *
+ * @param object An object from the execution flow from which control has to be delegated
+ * @return False if execution shall stop, True if execution shall continue
+ */
+ public boolean control(Object object) {
+ if (this.engine.isTerminated()) {
+ return false ;
+ }
+
+ // Retrieves the semantic element
+ EObject semanticElement = null ;
+ if (object instanceof ActivityNodeActivation) {
+ semanticElement = ((ActivityNodeActivation)object).node ;
+ }
+ else if (object instanceof ActivityEdgeInstance) {
+ semanticElement = ((ActivityEdgeInstance)object).edge ;
+ }
+ else {
+ Activator.log.error(new Exception("Unexpected element in ControlDelegate::control")) ;
+ }
+
+ // Manages animation
+ if (object instanceof ActivityNodeActivation && semanticElement != null && MokaConstants.MOKA_AUTOMATIC_ANIMATION && this.mode.equals(ILaunchManager.DEBUG_MODE)) {
+ this.animate((ActivityNodeActivation)object, (ActivityNode)semanticElement) ;
+ }
+
+ if (this.suspended) {
+ try {
+ synchronized (this) {
+ this.getThreads() ; // To make sure that this.threads is not empty
+ MokaThread mainThread = this.threads.get(0) ;
+ MokaStackFrame stackFrame = new MokaStackFrame(this.engine.getDebugTarget()) ;
+ stackFrame.setName(semanticElement.toString()) ;
+ stackFrame.setModelElement(semanticElement) ;
+ stackFrame.setVariables(new MokaVariable[]{}) ;
+ stackFrame.setThread(mainThread) ;
+ mainThread.setStackFrames(new IStackFrame[]{stackFrame}) ;
+ Suspend_Event suspendEvent = new Suspend_Event(mainThread, DebugEvent.CLIENT_REQUEST, this.getThreads()) ;
+ engine.sendEvent(suspendEvent) ;
+ wait() ;
+ }
+ } catch (InterruptedException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
+ }
+
+ return !this.engine.isTerminated() ;
}
- protected List<String> urisOfObjectWithBreakpoints = new ArrayList<String>() ;
+ protected void animate(ActivityNodeActivation activation, ActivityNode node) {
+ if (node instanceof Pin)
+ return ;
+ try {
+ // Simulates, in the animation, instantaneous consumption
+ // on all input pins and production on all output pins
+
+ // Retrieves all incoming edges for node and for its input pins
+ List<ActivityEdge> allEdges = new ArrayList<ActivityEdge>() ;
+ allEdges.addAll(node.getIncomings()) ;
+ if (node instanceof Action) {
+ for (InputPin input : ((Action)node).getInputs()) {
+ allEdges.addAll(input.getIncomings()) ;
+ }
+ }
+
+ // From all edges, retrieves all source output pins
+ List<Pin> previousOutputs = new ArrayList<Pin>() ;
+ for (ActivityEdge edge : allEdges) {
+ ActivityNode source = edge.getSource() ;
+ if (source instanceof Pin) {
+ previousOutputs.add((Pin)source) ;
+ }
+ }
+
+ // animate all previous outputs "simultaneously"
+ for (Pin output : previousOutputs) {
+ AnimationUtils.getInstance().addAnimationMarker(output) ;
+ }
+ if (! previousOutputs.isEmpty())
+ Thread.sleep(MokaConstants.MOKA_ANIMATION_DELAY) ;
+ for (Pin output : previousOutputs) {
+ AnimationUtils.getInstance().removeAnimationMarker(output) ;
+ }
+
+ // animate all input edges simultaneously
+// for (ActivityEdge edge : allEdges) {
+// AnimationUtils.getInstance().addAnimationMarker(edge) ;
+// }
+// if (! allEdges.isEmpty())
+// Thread.sleep(MokaConstants.MOKA_ANIMATION_DELAY) ;
+// for (ActivityEdge edge : allEdges) {
+// AnimationUtils.getInstance().removeAnimationMarker(edge) ;
+// }
+
+ // animate inputs
+ if (node instanceof Action) {
+ for (InputPin input : ((Action)node).getInputs()) {
+ AnimationUtils.getInstance().addAnimationMarker(input) ;
+ }
+ if (!((Action)node).getInputs().isEmpty())
+ Thread.sleep(MokaConstants.MOKA_ANIMATION_DELAY) ;
+ for (InputPin input : ((Action)node).getInputs()) {
+ AnimationUtils.getInstance().removeAnimationMarker(input) ;
+ }
+ }
- public synchronized void addBreakpoint(MokaBreakpoint breakpoint) {
- //String eObjectURI = EcoreUtil.getURI(breakpoint.getModelElement()).toString() ;
- String eObjectURI = breakpoint.getMarker().getAttribute(EValidator.URI_ATTRIBUTE, (String)null) ;
- if (eObjectURI != null) {
- if (! urisOfObjectWithBreakpoints.contains(eObjectURI))
- urisOfObjectWithBreakpoints.add(eObjectURI) ;
+ // animate node
+ AnimationUtils.getInstance().addAnimationMarker(node) ;
+ Thread.sleep(MokaConstants.MOKA_ANIMATION_DELAY) ;
+ AnimationUtils.getInstance().removeAnimationMarker(node) ;
+
+ } catch (InterruptedException e) {
+ Activator.log.error(e) ;
}
}
- public synchronized void removeBreakpoint(MokaBreakpoint breakpoint) {
- //String eObjectURI = EcoreUtil.getURI(breakpoint.getModelElement()).toString() ;
- String eObjectURI = breakpoint.getMarker().getAttribute(EValidator.URI_ATTRIBUTE, (String)null) ;
- if (eObjectURI != null) {
- urisOfObjectWithBreakpoints.remove(eObjectURI) ;
+ public void terminate(Terminate_Request request) {
+ engine.setIsTerminated(true) ;
+ synchronized (this) {
+ notify() ;
}
}
+
}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/Debug.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/Debug.java
index 2473430b0d5..7fdc5f8469f 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/Debug.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/Debug.java
@@ -16,7 +16,7 @@ package org.eclipse.papyrus.moka.fuml.debug;
public class Debug {
public static void println(String message) {
- //System.err.println(message) ;
+ System.err.println(message) ;
//FIXME Bug 404555: [Moka] Pollution of the console with debug messages
//https://bugs.eclipse.org/bugs/show_bug.cgi?id=404555
}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/FumlThread.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/FumlThread.java
deleted file mode 100644
index 59a3010c294..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/FumlThread.java
+++ /dev/null
@@ -1,45 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.debug;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.papyrus.moka.debug.MokaDebugTarget;
-import org.eclipse.papyrus.moka.debug.MokaStackFrame;
-import org.eclipse.papyrus.moka.debug.MokaThread;
-import org.eclipse.uml2.uml.Activity;
-import org.eclipse.uml2.uml.CallBehaviorAction;
-import org.eclipse.uml2.uml.CallOperationAction;
-
-public class FumlThread extends MokaThread {
-
- public FumlThread(MokaDebugTarget debugTarget) {
- super(debugTarget);
- }
-
- @Override
- public boolean canStepInto() {
- boolean canStepInto = super.canStepInto() ;
- if (canStepInto) {
- try {
- MokaStackFrame topStackFrame = (MokaStackFrame)this.getTopStackFrame() ;
- EObject modelElement = topStackFrame.getModelElement() ;
- if (modelElement instanceof CallOperationAction) {
- CallOperationAction action = (CallOperationAction)modelElement ;
- canStepInto = action.getOperation().getMethods().get(0) instanceof Activity ;
- }
- else if (modelElement instanceof CallBehaviorAction) {
- CallBehaviorAction action = (CallBehaviorAction)modelElement ;
- canStepInto = action.getBehavior() instanceof Activity ;
- }
- else {
- canStepInto = false ;
- }
- } catch (DebugException e) {
- canStepInto = false ;
- } catch (NullPointerException e) {
- canStepInto = false ;
- }
- }
- return canStepInto ;
- }
-
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/StackFrameManager.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/StackFrameManager.java
deleted file mode 100644
index fd5c37ffe77..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/debug/StackFrameManager.java
+++ /dev/null
@@ -1,69 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.debug;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-import org.eclipse.papyrus.moka.debug.MokaStackFrame;
-import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityExecution;
-
-public class StackFrameManager {
-
- protected static StackFrameManager eInstance ;
-
- protected List<ActivityExecution> activityExecutions = new ArrayList<ActivityExecution>() ;
- protected Map<ActivityExecution, MokaStackFrame> activityExecutionsToStackFrame = new HashMap<ActivityExecution, MokaStackFrame>() ;
-
- private StackFrameManager() {
-
- }
-
- public static StackFrameManager getInstance() {
- if (eInstance == null)
- eInstance = new StackFrameManager() ;
- return eInstance ;
- }
-
- public void pushActivityExecution(ActivityExecution execution) {
- this.activityExecutions.add(execution) ;
- this.activityExecutionsToStackFrame.put(execution, null) ;
- }
-
- public ActivityExecution popActivityExecution() {
- ActivityExecution removed = this.activityExecutions.remove(activityExecutions.size() - 1) ;
- this.activityExecutionsToStackFrame.remove(removed) ;
- return removed ;
- }
-
- public void setStackFrame(ActivityExecution execution, MokaStackFrame stackFrame) {
- this.activityExecutionsToStackFrame.put(execution, stackFrame) ;
- }
-
- public ActivityExecution getTopActivityExecution() {
- return activityExecutions.get(activityExecutions.size() - 1) ;
- }
-
- public boolean isBefore(ActivityExecution execution1, ActivityExecution execution2) {
- int indexOfExecution2 = activityExecutions.indexOf(execution2) ;
- if (indexOfExecution2 < 0) // execution2 has already been removed from the list of executions, so execution1 was necessarily before
- return true ;
- int indexOfExecution1 = activityExecutions.indexOf(execution1) ;
- return indexOfExecution1 < indexOfExecution2 ;
- }
-
- public boolean contains(ActivityExecution execution) {
- return this.activityExecutions.contains(execution) ;
- }
-
- public MokaStackFrame[] getStackFrames() {
- MokaStackFrame[] stackFrames = new MokaStackFrame[this.activityExecutions.size()] ;
- int j = 0 ;
- for (int i = activityExecutions.size() - 1 ; i >=0 ; i--) {
- MokaStackFrame stackFrameElement = this.activityExecutionsToStackFrame.get(activityExecutions.get(i)) ;
- stackFrames[j] = stackFrameElement ;
- j++ ;
- }
- return stackFrames ;
- }
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/FUMLPresentationUtils.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/FUMLPresentationUtils.java
deleted file mode 100644
index f45e19fb112..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/FUMLPresentationUtils.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.presentation;
-
-import org.eclipse.papyrus.moka.debug.MokaStackFrame;
-import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityEdgeInstance;
-import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityNodeActivation;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.FeatureValue;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Object_;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Reference;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Value;
-import org.eclipse.uml2.uml.StructuralFeature;
-
-public class FUMLPresentationUtils {
-
- public static MokaStackFrame getMokaStackFrame(ActivityNodeActivation activityNodeActivation) {
- return new MokaStackFrame_from_ActivityNodeActivation(activityNodeActivation) ;
- }
-
- public static MokaStackFrame getMokaStackFrame(ActivityEdgeInstance activityEdgeInstance) {
- return new MokaStackFrame_from_ActivityEdgeInstance(activityEdgeInstance) ;
- }
-
- public static String getValueString(Value value) {
- if (value == null)
- return "null" ;
- if (value instanceof Object_ || value instanceof Reference) {
- String className = value.getClass().getSimpleName() ;
- String id = "" + value.hashCode() ;
- return className + " (id=" + id + ")" ;
- }
- return value.toString() ;
- }
-
- public static String getValueString(FeatureValue featureValue) {
- StructuralFeature f = featureValue.feature ;
- String valueString = "" ;
- if (isCollection(featureValue)) {
- valueString += f.getType() != null ? f.getType().getName() : "any" ;
- valueString += "[] (size=" + featureValue.values.size();
- valueString += (")") ;
- }
- else {
- Value value = featureValue.values.size() == 1 ? featureValue.values.get(0) : null ;
- return getValueString(value) ;
- }
- return valueString ;
- }
-
- public static boolean isCollection(FeatureValue featureValue) {
- return featureValue.feature.getUpper() == -1 ||
- featureValue.feature.getUpper() > 1 ||
- featureValue.values.size() > 1 ;
- }
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaStackFrame_from_ActivityEdgeInstance.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaStackFrame_from_ActivityEdgeInstance.java
deleted file mode 100644
index 5bf762260cf..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaStackFrame_from_ActivityEdgeInstance.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.presentation;
-
-import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityEdgeInstance;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Object_;
-
-public class MokaStackFrame_from_ActivityEdgeInstance extends MokaStackFrame_from_UMLModelElement {
-
- protected ActivityEdgeInstance activityEdgeInstance ;
-
- public MokaStackFrame_from_ActivityEdgeInstance(ActivityEdgeInstance activityEdgeInstance) {
- super(activityEdgeInstance.edge);
- this.activityEdgeInstance = activityEdgeInstance ;
- }
-
- ///////////////////////////////
- // Presentation
- ///////////////////////////////
-
- public String getLabel() {
- String activityName = activityEdgeInstance.edge.getActivity().getName() ;
- String nodeName = activityEdgeInstance.edge.getName() ;
- if (nodeName == null || nodeName.length() == 0)
- nodeName = "Anonymous edge" ;
- return activityName + "(" + nodeName + ")" ;
- }
-
- ///////////////////////////////
- // Debug
- ///////////////////////////////
-
- @Override
- protected Object_ getContextObject() {
- return activityEdgeInstance.group.getActivityExecution().context ;
- }
-
-
-
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaStackFrame_from_ActivityNodeActivation.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaStackFrame_from_ActivityNodeActivation.java
deleted file mode 100644
index 992e67dd69c..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaStackFrame_from_ActivityNodeActivation.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.presentation;
-
-import org.eclipse.papyrus.moka.fuml.Semantics.Activities.IntermediateActivities.ActivityNodeActivation;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Object_;
-
-public class MokaStackFrame_from_ActivityNodeActivation extends MokaStackFrame_from_UMLModelElement {
-
- protected ActivityNodeActivation activityNodeActivation ;
-
- public MokaStackFrame_from_ActivityNodeActivation(ActivityNodeActivation activityNodeActivation) {
- super(activityNodeActivation.node);
- this.activityNodeActivation = activityNodeActivation ;
- }
-
- ///////////////////////////////
- // Presentation
- ///////////////////////////////
-
- public String getLabel() {
- String activityName = activityNodeActivation.getActivityExecution().getBehavior().getName() ;
- String nodeName = activityNodeActivation.node.getName() ;
- if (nodeName == null || nodeName.length() == 0)
- nodeName = "Anonymous node" ;
- return activityName + "(" + nodeName + ")" ;
- }
-
- ///////////////////////////////
- // Debug
- ///////////////////////////////
-
- @Override
- protected Object_ getContextObject() {
- return activityNodeActivation.getExecutionContext() ;
- }
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaStackFrame_from_UMLModelElement.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaStackFrame_from_UMLModelElement.java
deleted file mode 100644
index ccb08a734a8..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaStackFrame_from_UMLModelElement.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.presentation;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.papyrus.moka.debug.MokaStackFrame;
-import org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Object_;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
-import org.eclipse.papyrus.moka.ui.presentation.IPresentation;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.uml2.uml.Element;
-
-public abstract class MokaStackFrame_from_UMLModelElement extends MokaStackFrame implements IPresentation {
-
- public MokaStackFrame_from_UMLModelElement(Element modelElement) {
- super(Locus.getDebugTarget());
- this.modelElement = modelElement ;
- }
-
- ///////////////////////////////
- // Presentation
- ///////////////////////////////
-
- /* (non-Javadoc)
- * @see org.eclipse.papyrus.moka.ui.presentation.IPresentation#getLabel()
- */
- abstract public String getLabel() ;
-
- /* (non-Javadoc)
- * @see org.eclipse.papyrus.moka.ui.presentation.IPresentation#getDetails()
- */
- public String getDetails() {
- // Not used
- return "";
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.papyrus.moka.ui.presentation.IPresentation#getImage()
- */
- public Image getImage() {
- return FUMLExecutionEngine.getImage(modelElement) ;
- }
-
- ///////////////////////////////
- // Debug
- ///////////////////////////////
-
- /* (non-Javadoc)
- * @see org.eclipse.papyrus.moka.debug.MokaStackFrame#hasVariables()
- */
- @Override
- public boolean hasVariables() throws DebugException {
- return true ;
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.papyrus.moka.debug.MokaStackFrame#getVariables()
- */
- @Override
- public IVariable[] getVariables() throws DebugException {
- Object_ contextObject = this.getContextObject() ;
- IVariable[] variables ;
- if (contextObject == null) {
- variables = new IVariable[]{};
- }
- else {
- MokaVariable_from_ContextObject var = new MokaVariable_from_ContextObject(contextObject) ;
- variables = new IVariable[]{var} ;
- }
- return variables ;
- }
-
- /**
- * Returns the context fUML Object_ for this stack frame
- *
- * @return the context fUML Object_ for this stack frame
- */
- protected abstract Object_ getContextObject() ;
-
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaValue_for_fUML.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaValue_for_fUML.java
deleted file mode 100644
index 70dfd4b4151..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaValue_for_fUML.java
+++ /dev/null
@@ -1,46 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.presentation;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.papyrus.moka.debug.MokaValue;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
-import org.eclipse.papyrus.moka.ui.presentation.IPresentation;
-import org.eclipse.swt.graphics.Image;
-
-public abstract class MokaValue_for_fUML extends MokaValue implements IPresentation {
-
- public MokaValue_for_fUML() {
- super(Locus.getDebugTarget());
- }
-
- //////////////////////////////////
- // Presentation
- //////////////////////////////////
-
- public String getLabel() {
- // Not used
- return "";
- }
-
- public abstract String getDetails() ;
-
- public Image getImage() {
- // Not used
- return null ;
- }
-
- //////////////////////////////////
- // Debug
- //////////////////////////////////
-
- @Override
- public IVariable[] getVariables() throws DebugException {
- return new IVariable[]{};
- }
-
- @Override
- public boolean hasVariables() throws DebugException {
- return false ;
- }
-
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaValue_from_FeatureValue.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaValue_from_FeatureValue.java
deleted file mode 100644
index 26f0fef998d..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaValue_from_FeatureValue.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.presentation;
-
-import java.util.List;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.papyrus.moka.debug.MokaVariable;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.FeatureValue;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Value;
-
-public class MokaValue_from_FeatureValue extends MokaValue_for_fUML {
-
- protected FeatureValue featureValue ;
-
- protected IVariable[] variables ;
-
- public MokaValue_from_FeatureValue(FeatureValue featureValue) {
- super() ;
- this.featureValue = featureValue ;
- }
-
- ////////////////////////
- // Presentation
- ////////////////////////
-
- @Override
- public String getDetails() {
- return computeDetails() ;
- }
-
- ////////////////////////
- // Debug
- ////////////////////////
-
- @Override
- public String getValueString() throws DebugException {
- String valueString = null;
- if (FUMLPresentationUtils.isCollection(featureValue)) {
- valueString = FUMLPresentationUtils.getValueString(featureValue) ;
- }
- else {
- valueString = computeDetails() ;
- }
- return valueString ;
- }
-
- @Override
- public IVariable[] getVariables() throws DebugException {
- if (variables == null) {
- if (featureValue.values.isEmpty()) {
- variables = new IVariable[]{} ;
- }
- else {
- variables = new IVariable[featureValue.values.size()] ;
- for (int i = 0 ; i < variables.length ; i++) {
- MokaVariable valueVariable = new MokaVariable_from_Value(featureValue.values.get(i)) ;
- valueVariable.setName("[" + (i + 1) + "]") ;
- variables[i] = valueVariable ;
- }
- }
- }
- return variables ;
- }
-
- @Override
- public boolean hasVariables() throws DebugException {
- return this.getVariables().length > 0 && FUMLPresentationUtils.isCollection(featureValue);
- }
-
- protected String computeDetails() {
- String valueString = FUMLPresentationUtils.isCollection(featureValue) ? "{ " : "" ;
- List<Value> values = featureValue.values ;
- boolean first = true ;
- if (values.isEmpty() && !FUMLPresentationUtils.isCollection(featureValue))
- return "null" ;
- for (Value v : values) {
- if (first) {
- valueString += v.toString() ;
- first = false ;
- }
- else {
- valueString += ", " ;
- valueString += v.toString() ;
- }
- }
- valueString += FUMLPresentationUtils.isCollection(featureValue) ? " }" : "";
- return valueString ;
- }
-
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaValue_from_Value.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaValue_from_Value.java
deleted file mode 100644
index 3feabd65fe1..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaValue_from_Value.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.presentation;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IVariable;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.CompoundValue;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Value;
-
-public class MokaValue_from_Value extends MokaValue_for_fUML {
-
- protected Value value ;
-
- protected IVariable[] variables ;
-
- public MokaValue_from_Value(Value value) {
- super();
- this.value = value ;
- }
-
- //////////////////////////////////
- // Presentation
- //////////////////////////////////
-
- public String getDetails() {
- return value.toString();
- }
-
- //////////////////////////////////
- // Debug
- //////////////////////////////////
-
- @Override
- public String getValueString() throws DebugException {
- return FUMLPresentationUtils.getValueString(value) ;
- }
-
- @Override
- public IVariable[] getVariables() throws DebugException {
- if (variables == null) {
- if (! (value instanceof CompoundValue)) {
- variables = new IVariable[]{} ;
- }
- else if (((CompoundValue)value).featureValues.isEmpty()) {
- variables = new IVariable[]{} ;
- }
- else {
- CompoundValue compound = (CompoundValue)value ;
- variables = new IVariable[compound.featureValues.size()] ;
- for (int i = 0 ; i < variables.length ; i++) {
- IVariable featureValueVariable = new MokaVariable_from_FeatureValue(compound.featureValues.get(i)) ;
- variables[i] = featureValueVariable ;
- }
- }
- }
- return variables;
- }
-
- @Override
- public boolean hasVariables() throws DebugException {
- return getVariables().length > 0;
- }
-
-
-
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_for_fUML.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_for_fUML.java
deleted file mode 100644
index 02aa78930e2..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_for_fUML.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.presentation;
-
-import org.eclipse.papyrus.moka.debug.MokaVariable;
-import org.eclipse.papyrus.moka.fuml.Semantics.Loci.LociL1.Locus;
-import org.eclipse.papyrus.moka.ui.presentation.IPresentation;
-import org.eclipse.swt.graphics.Image;
-
-public abstract class MokaVariable_for_fUML extends MokaVariable implements IPresentation {
-
- public MokaVariable_for_fUML() {
- super(Locus.getDebugTarget());
- }
-
- public String getLabel() {
- // Not used
- return "";
- }
-
- public String getDetails() {
- // Not used
- return "";
- }
-
- public abstract Image getImage() ;
-
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_from_ContextObject.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_from_ContextObject.java
deleted file mode 100644
index 6660121be20..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_from_ContextObject.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.presentation;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Object_;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.uml2.uml.UMLPackage;
-
-public class MokaVariable_from_ContextObject extends MokaVariable_for_fUML {
-
- protected Object_ contextObject ;
-
- public MokaVariable_from_ContextObject(Object_ contextObject) {
- super();
- this.name = "context" ;
- this.contextObject = contextObject ;
- }
-
- //////////////////////////////////
- // Presentation
- //////////////////////////////////
-
- public Image getImage() {
- // not used for variables
- return FUMLExecutionEngine.getImage(UMLPackage.eINSTANCE.getInstanceSpecification()) ;
- }
-
- //////////////////////////////////
- // Debug
- //////////////////////////////////
- @Override
- public IValue getValue() throws DebugException {
- return new MokaValue_from_Value(contextObject) ;
- }
-
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_from_FeatureValue.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_from_FeatureValue.java
deleted file mode 100644
index 063d26b676d..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_from_FeatureValue.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.presentation;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.FeatureValue;
-import org.eclipse.swt.graphics.Image;
-
-public class MokaVariable_from_FeatureValue extends MokaVariable_for_fUML {
-
- protected FeatureValue featureValue ;
-
- protected IValue value ;
-
- public MokaVariable_from_FeatureValue(FeatureValue featureValue) {
- super() ;
- this.featureValue = featureValue ;
- this.name = featureValue.feature.getName() ;
- }
-
- ////////////////////////
- // Presentation
- ////////////////////////
-
- @Override
- public Image getImage() {
- return FUMLExecutionEngine.getImage(featureValue.feature);
- }
-
- ////////////////////////
- // Debug
- ////////////////////////
-
- @Override
- public IValue getValue() throws DebugException {
- if (this.value == null) {
- this.value = new MokaValue_from_FeatureValue(featureValue) ;
- }
- return this.value;
- }
-
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_from_Value.java b/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_from_Value.java
deleted file mode 100644
index 4d8aaebf585..00000000000
--- a/sandbox/Moka/org.eclipse.papyrus.moka.fuml/src/org/eclipse/papyrus/moka/fuml/presentation/MokaVariable_from_Value.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.eclipse.papyrus.moka.fuml.presentation;
-
-import org.eclipse.debug.core.DebugException;
-import org.eclipse.debug.core.model.IValue;
-import org.eclipse.papyrus.moka.fuml.FUMLExecutionEngine;
-import org.eclipse.papyrus.moka.fuml.Semantics.Classes.Kernel.Value;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.uml2.uml.UMLPackage;
-
-public class MokaVariable_from_Value extends MokaVariable_for_fUML {
-
- protected Value value ;
-
- public MokaVariable_from_Value(Value value) {
- super();
- this.value = value ;
- }
-
- //////////////////////////////////
- // Presentation
- //////////////////////////////////
-
- public Image getImage() {
- // not used for variables
- return FUMLExecutionEngine.getImage(UMLPackage.eINSTANCE.getInstanceSpecification()) ;
- }
-
- //////////////////////////////////
- // Debug
- //////////////////////////////////
- @Override
- public IValue getValue() throws DebugException {
- return new MokaValue_from_Value(value) ;
- }
-
-}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/Activator.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/Activator.class
new file mode 100644
index 00000000000..dcc3523131e
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/Activator.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/MokaConstants.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/MokaConstants.class
new file mode 100644
index 00000000000..4036ec8d123
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/MokaConstants.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/IMarshaler.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/IMarshaler.class
new file mode 100644
index 00000000000..23c7a288819
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/IMarshaler.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/Marshaller.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/Marshaller.class
new file mode 100644
index 00000000000..69f9a540533
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/Marshaller.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/EventMessage.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/EventMessage.class
new file mode 100644
index 00000000000..f830fda30d5
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/EventMessage.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/Start_Event.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/Start_Event.class
new file mode 100644
index 00000000000..a80419db8d3
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/Start_Event.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/isuspendresume/Resume_Event.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/isuspendresume/Resume_Event.class
new file mode 100644
index 00000000000..8729067561f
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/isuspendresume/Resume_Event.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/isuspendresume/Suspend_Event.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/isuspendresume/Suspend_Event.class
new file mode 100644
index 00000000000..24aec83957c
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/isuspendresume/Suspend_Event.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/iterminate/Terminate_Event.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/iterminate/Terminate_Event.class
new file mode 100644
index 00000000000..85e14aeb617
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/event/iterminate/Terminate_Event.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/Ack.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/Ack.class
new file mode 100644
index 00000000000..2ef676418b2
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/Ack.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ReplyMessage.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ReplyMessage.class
new file mode 100644
index 00000000000..a618a15d227
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ReplyMessage.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/istackframe/GetVariables_Reply.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/istackframe/GetVariables_Reply.class
new file mode 100644
index 00000000000..d473dd63d90
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/istackframe/GetVariables_Reply.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ithread/GetStackFrames_Reply.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ithread/GetStackFrames_Reply.class
new file mode 100644
index 00000000000..486eb4d4d2f
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ithread/GetStackFrames_Reply.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ivalue/GetValueString_Reply.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ivalue/GetValueString_Reply.class
new file mode 100644
index 00000000000..b8aa0c44b10
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ivalue/GetValueString_Reply.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ivariable/GetReferenceTypeName_Reply.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ivariable/GetReferenceTypeName_Reply.class
new file mode 100644
index 00000000000..e767024398a
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ivariable/GetReferenceTypeName_Reply.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ivariable/GetValue_Reply.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ivariable/GetValue_Reply.class
new file mode 100644
index 00000000000..34a68d962cc
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/reply/ivariable/GetValue_Reply.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/RequestMessage.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/RequestMessage.class
new file mode 100644
index 00000000000..47803beea3f
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/RequestMessage.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ibreakpointlistener/AddBreakpoint_Request.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ibreakpointlistener/AddBreakpoint_Request.class
new file mode 100644
index 00000000000..6f0428e61a0
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ibreakpointlistener/AddBreakpoint_Request.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ibreakpointlistener/RemoveBreakpoint_Request.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ibreakpointlistener/RemoveBreakpoint_Request.class
new file mode 100644
index 00000000000..28f4078dbc1
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ibreakpointlistener/RemoveBreakpoint_Request.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/idisconnect/Disconnect_Request.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/idisconnect/Disconnect_Request.class
new file mode 100644
index 00000000000..bc45c7c24a3
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/idisconnect/Disconnect_Request.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/istackframe/GetVariables_Request.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/istackframe/GetVariables_Request.class
new file mode 100644
index 00000000000..b1f22958065
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/istackframe/GetVariables_Request.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/isuspendresume/Resume_Request.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/isuspendresume/Resume_Request.class
new file mode 100644
index 00000000000..e4f19bc9054
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/isuspendresume/Resume_Request.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/isuspendresume/Suspend_Request.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/isuspendresume/Suspend_Request.class
new file mode 100644
index 00000000000..114d8f026d4
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/isuspendresume/Suspend_Request.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/iterminate/Terminate_Request.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/iterminate/Terminate_Request.class
new file mode 100644
index 00000000000..4d9e387e6fd
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/iterminate/Terminate_Request.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ithread/GetStackFrames_Request.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ithread/GetStackFrames_Request.class
new file mode 100644
index 00000000000..826018dbdd2
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ithread/GetStackFrames_Request.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ivalue/GetValueString_Request.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ivalue/GetValueString_Request.class
new file mode 100644
index 00000000000..57db859647c
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ivalue/GetValueString_Request.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ivariable/GetReferenceTypeName_Request.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ivariable/GetReferenceTypeName_Request.class
new file mode 100644
index 00000000000..c58b74134bf
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ivariable/GetReferenceTypeName_Request.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ivariable/GetValue_Request.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ivariable/GetValue_Request.class
new file mode 100644
index 00000000000..c32ea37b01a
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/communication/request/ivariable/GetValue_Request.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaBreakpoint.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaBreakpoint.class
new file mode 100644
index 00000000000..e2d8d8f8b1e
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaBreakpoint.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaDebugElement.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaDebugElement.class
new file mode 100644
index 00000000000..d3cb72ca270
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaDebugElement.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaDebugTarget$EventDispatchJob.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaDebugTarget$EventDispatchJob.class
new file mode 100644
index 00000000000..baf844f9fde
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaDebugTarget$EventDispatchJob.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaDebugTarget.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaDebugTarget.class
new file mode 100644
index 00000000000..11e0b403024
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaDebugTarget.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaJobChangeListener.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaJobChangeListener.class
new file mode 100644
index 00000000000..d720dcec178
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaJobChangeListener.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaProcess.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaProcess.class
new file mode 100644
index 00000000000..44f3cf99a18
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaProcess.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaStackFrame.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaStackFrame.class
new file mode 100644
index 00000000000..2fc6d411cc5
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaStackFrame.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaThread.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaThread.class
new file mode 100644
index 00000000000..5ddd77f84cc
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaThread.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaValue.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaValue.class
new file mode 100644
index 00000000000..18fc72ca428
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaValue.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaVariable.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaVariable.class
new file mode 100644
index 00000000000..cc641e4d4a5
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/debug/MokaVariable.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/engine/AbstractExecutionEngine.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/engine/AbstractExecutionEngine.class
new file mode 100644
index 00000000000..948cc959eda
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/engine/AbstractExecutionEngine.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/engine/IExecutionEngine.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/engine/IExecutionEngine.class
new file mode 100644
index 00000000000..3c2f2670990
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/engine/IExecutionEngine.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/engine/MokaExecutionEngineJob.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/engine/MokaExecutionEngineJob.class
new file mode 100644
index 00000000000..dbc0d9619d5
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/engine/MokaExecutionEngineJob.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/launch/EditorUtils.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/launch/EditorUtils.class
new file mode 100644
index 00000000000..6018150e20d
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/launch/EditorUtils.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/launch/MokaLaunchDelegate.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/launch/MokaLaunchDelegate.class
new file mode 100644
index 00000000000..9bcb50fdc36
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/launch/MokaLaunchDelegate.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/launch/OpenPapyrusEditorRunnable.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/launch/OpenPapyrusEditorRunnable.class
new file mode 100644
index 00000000000..0bb3fd2a8b6
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/launch/OpenPapyrusEditorRunnable.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/locator/MokaSourceLocator$MokaSourceLookupParticipant.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/locator/MokaSourceLocator$MokaSourceLookupParticipant.class
new file mode 100644
index 00000000000..6b0f57498a4
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/locator/MokaSourceLocator$MokaSourceLookupParticipant.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/locator/MokaSourceLocator.class b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/locator/MokaSourceLocator.class
new file mode 100644
index 00000000000..fd0b62bb77d
--- /dev/null
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/bin/org/eclipse/papyrus/moka/locator/MokaSourceLocator.class
Binary files differ
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/debug/MokaDebugTarget.java b/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/debug/MokaDebugTarget.java
index 47d5b33b083..8cbccde7c36 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/debug/MokaDebugTarget.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/debug/MokaDebugTarget.java
@@ -30,6 +30,7 @@ import org.eclipse.debug.core.DebugEvent;
import org.eclipse.debug.core.DebugException;
import org.eclipse.debug.core.DebugPlugin;
import org.eclipse.debug.core.ILaunch;
+import org.eclipse.debug.core.ILaunchManager;
import org.eclipse.debug.core.model.IBreakpoint;
import org.eclipse.debug.core.model.IDebugElement;
import org.eclipse.debug.core.model.IDebugTarget;
@@ -360,7 +361,7 @@ public class MokaDebugTarget extends MokaDebugElement implements IDebugTarget {
*/
public boolean canSuspend() {
// The debug target can be suspended if it is not already suspended and if it is not terminated
- return !this.isSuspended && !this.isTerminated() ;
+ return this.launch.getLaunchMode().equals(ILaunchManager.DEBUG_MODE) && !this.isSuspended && !this.isTerminated() ;
}
/* (non-Javadoc)
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/debug/MokaProcess.java b/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/debug/MokaProcess.java
index f1d5ce5b449..96c71d0a750 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/debug/MokaProcess.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/debug/MokaProcess.java
@@ -30,6 +30,7 @@ import org.eclipse.debug.core.model.IDebugTarget;
import org.eclipse.debug.core.model.IProcess;
import org.eclipse.debug.core.model.IStreamsProxy;
import org.eclipse.debug.core.model.ITerminate;
+import org.eclipse.papyrus.moka.engine.MokaExecutionEngineJob;
/**
* An IProcess is an abstraction of a running program (in our case, the actual execution engine).
@@ -47,9 +48,6 @@ import org.eclipse.debug.core.model.ITerminate;
*/
public class MokaProcess extends PlatformObject implements IProcess {
- private static final int MAX_WAIT_FOR_DEATH_ATTEMPTS = 10;
- private static final int TIME_TO_WAIT_FOR_THREAD_DEATH = 500; // ms
-
/**
* The launch this process is contained in
*/
@@ -58,7 +56,7 @@ public class MokaProcess extends PlatformObject implements IProcess {
/**
* The Job used to run the execution engine
*/
- protected Job job;
+ protected MokaExecutionEngineJob job;
/**
* This Job's exit value
@@ -92,7 +90,7 @@ public class MokaProcess extends PlatformObject implements IProcess {
public MokaProcess(ILaunch launch, Job job, String label, Map<String, String> attributes) {
this.launch = launch;
initializeAttributes(attributes);
- this.job = job ;
+ this.job = (MokaExecutionEngineJob)job ;
this.job.addJobChangeListener(new MokaJobChangeListener(this)) ;
this.label = label;
isTerminated= false ;
@@ -150,30 +148,8 @@ public class MokaProcess extends PlatformObject implements IProcess {
if (!isTerminated()) {
//Job job = getExecutionEngineJob();
if (this.job != null) {
- this.job.cancel();
- }
- int attempts = 0;
- while (attempts < MAX_WAIT_FOR_DEATH_ATTEMPTS) {
- try {
- if (this.job != null) {
- IStatus result = this.job.getResult() ;
- if (result == null) // No result available. It means that cancellation is not yet effective.
- throw new IllegalThreadStateException() ;
- else
- this.exitValue = this.job.getResult().getCode() ;
- }
- return;
- } catch (IllegalThreadStateException ie) {
- ie.printStackTrace() ;
- }
- try {
- Thread.sleep(TIME_TO_WAIT_FOR_THREAD_DEATH);
- } catch (InterruptedException e) {
- }
- attempts++;
+ this.job.getDebugTarget().terminate();
}
- IStatus status = new Status(IStatus.ERROR, DebugPlugin.getUniqueIdentifier(), DebugException.TARGET_REQUEST_FAILED, "Terminate failed", null);
- throw new DebugException(status);
}
}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/AbstractExecutionEngine.java b/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/AbstractExecutionEngine.java
index af7e761a998..5044dc9f94f 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/AbstractExecutionEngine.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/AbstractExecutionEngine.java
@@ -90,12 +90,12 @@ public abstract class AbstractExecutionEngine implements IExecutionEngine {
* The server socket used to accept connection from the requestSocket (connection is done in Moka debug target)
*/
protected ServerSocket requestServer ;
-
+
/**
* The server socket used to accept connection from the replySocket (connection is done in Moka debug target)
*/
protected ServerSocket replyServer ;
-
+
/**
* The socket used to reply to request emitted by the debug target
*/
@@ -137,25 +137,18 @@ public abstract class AbstractExecutionEngine implements IExecutionEngine {
protected boolean isTerminated = false ;
/**
- * Inits the execution engine in Run mode
- */
- public void initRun(EObject eObjectToExecute, String[] args) {
- this.eObjectToExecute = eObjectToExecute ;
- this.initializeArguments(args) ;
- }
-
- /**
* Inits the execution engine in Debug mode.
* This includes the creation of server sockets, to enable connection of sockets in the moka debug target.
*
*/
- public void initDebug(EObject eObjectToExecute, String[] args, MokaDebugTarget debugTarget, int requestPort, int replyPort, int eventPort) throws UnknownHostException, IOException {
+ public void init(EObject eObjectToExecute, String[] args, MokaDebugTarget debugTarget, int requestPort, int replyPort, int eventPort) throws UnknownHostException, IOException {
this.debugTarget = debugTarget ;
this.requestServer = new ServerSocket(requestPort) ;
this.replyServer = new ServerSocket(replyPort) ;
this.eventServer = new ServerSocket(eventPort) ;
this.mode = ILaunchManager.DEBUG_MODE ;
- this.initRun(eObjectToExecute, args) ;
+ this.eObjectToExecute = eObjectToExecute ;
+ this.initializeArguments(args) ;
}
/**
@@ -166,8 +159,8 @@ public abstract class AbstractExecutionEngine implements IExecutionEngine {
public MokaDebugTarget getDebugTarget() {
return this.debugTarget ;
}
-
-
+
+
/**
* Returns true if the execution is terminated, false otherwise
*
@@ -176,7 +169,7 @@ public abstract class AbstractExecutionEngine implements IExecutionEngine {
public boolean isTerminated() {
return this.isTerminated ;
}
-
+
/**
* Initializes the execution engine with given arguments
*/
@@ -187,79 +180,73 @@ public abstract class AbstractExecutionEngine implements IExecutionEngine {
*/
public void start() throws IOException {
if (eObjectToExecute != null) {
- if (this.mode.equals(ILaunchManager.DEBUG_MODE)) {
- String request = "";
- // First accepts connection of the request socket (from the moka debug target) and initializes reader/writer
- requestSocket = requestServer.accept() ;
- requestReader = new BufferedReader(new InputStreamReader(requestSocket.getInputStream()));
- // Then accepts connection of the reply socket
- replySocket = replyServer.accept() ;
- replyWriter = new PrintWriter(replySocket.getOutputStream());
- // Then accepts connection of the event socket
- eventSocket = eventServer.accept() ;
- eventWriter = new PrintWriter(eventSocket.getOutputStream()) ;
- // Communication protocol starts by notifying the moka debug target that execution has started
- this.sendEvent(new Start_Event(this.debugTarget, this.getThreads())) ;
- while (!this.isTerminated && request != null) {
- try {
- request = requestReader.readLine();
- if (request != null) {
- if (request.startsWith(MokaConstants.request_addBreakpoint)) {
- // Add breakpoint request
- this.addBreakpoint_reply(request);
- }
- else if (request.startsWith(MokaConstants.request_removeBreakpoint)) {
- // Remove breakpoint request
- this.removeBreakpoint_reply(request) ;
- }
- else if (request.startsWith(MokaConstants.request_disconnect)) {
- // Disconnection requested
- this.disconnect_reply() ;
- }
- else if (request.startsWith(MokaConstants.request_resume)) {
- // Resume requested
- this.resume_reply(request) ;
- }
- else if (request.startsWith(MokaConstants.request_suspend)) {
- // Suspend requested
- this.suspend_reply(request) ;
- }
- else if (request.startsWith(MokaConstants.request_terminate)) {
- // Terminate requested
- this.terminate_reply(request) ;
- }
- else if (request.startsWith(MokaConstants.request_getStackFrames)) {
- // Stack frames requested
- this.getStackFrames_reply(request) ;
- }
- else if (request.startsWith(MokaConstants.request_getVariables)) {
- // Variables requested
- this.getVariables_reply(request) ;
- }
- else if (request.startsWith(MokaConstants.request_getValue)) {
- // Variable value requested
- this.getValue_reply(request) ;
- }
- else if (request.startsWith(MokaConstants.request_getReferenceTypeName)) {
- // Reference type name of a variable requested
- this.getReferenceTypeName_reply(request) ;
- }
- else if (request.startsWith(MokaConstants.request_getValueString)) {
- // String representation of a value requested
- this.getValueString_reply(request) ;
- }
+ String request = "";
+ // First accepts connection of the request socket (from the moka debug target) and initializes reader/writer
+ requestSocket = requestServer.accept() ;
+ requestReader = new BufferedReader(new InputStreamReader(requestSocket.getInputStream()));
+ // Then accepts connection of the reply socket
+ replySocket = replyServer.accept() ;
+ replyWriter = new PrintWriter(replySocket.getOutputStream());
+ // Then accepts connection of the event socket
+ eventSocket = eventServer.accept() ;
+ eventWriter = new PrintWriter(eventSocket.getOutputStream()) ;
+ // Communication protocol starts by notifying the moka debug target that execution has started
+ this.sendEvent(new Start_Event(this.debugTarget, this.getThreads())) ;
+ while (!this.isTerminated && request != null) {
+ try {
+ request = requestReader.readLine();
+ if (request != null) {
+ if (request.startsWith(MokaConstants.request_addBreakpoint)) {
+ // Add breakpoint request
+ this.addBreakpoint_reply(request);
+ }
+ else if (request.startsWith(MokaConstants.request_removeBreakpoint)) {
+ // Remove breakpoint request
+ this.removeBreakpoint_reply(request) ;
+ }
+ else if (request.startsWith(MokaConstants.request_disconnect)) {
+ // Disconnection requested
+ this.disconnect_reply() ;
+ }
+ else if (request.startsWith(MokaConstants.request_resume)) {
+ // Resume requested
+ this.resume_reply(request) ;
+ }
+ else if (request.startsWith(MokaConstants.request_suspend)) {
+ // Suspend requested
+ this.suspend_reply(request) ;
+ }
+ else if (request.startsWith(MokaConstants.request_terminate)) {
+ // Terminate requested
+ this.terminate_reply(request) ;
+ }
+ else if (request.startsWith(MokaConstants.request_getStackFrames)) {
+ // Stack frames requested
+ this.getStackFrames_reply(request) ;
+ }
+ else if (request.startsWith(MokaConstants.request_getVariables)) {
+ // Variables requested
+ this.getVariables_reply(request) ;
+ }
+ else if (request.startsWith(MokaConstants.request_getValue)) {
+ // Variable value requested
+ this.getValue_reply(request) ;
+ }
+ else if (request.startsWith(MokaConstants.request_getReferenceTypeName)) {
+ // Reference type name of a variable requested
+ this.getReferenceTypeName_reply(request) ;
+ }
+ else if (request.startsWith(MokaConstants.request_getValueString)) {
+ // String representation of a value requested
+ this.getValueString_reply(request) ;
}
- } catch (IOException e) {
- this.isTerminated = true ;
}
+ } catch (IOException e) {
+ this.isTerminated = true ;
}
- // Communication protocol ends by notifying the moka debug target that execution has terminated
- this.sendEvent(new Terminate_Event(this.debugTarget)) ;
- }
- else {
- // In Run mode, simply resumes the execution once.
- this.resume() ;
}
+ // Communication protocol ends by notifying the moka debug target that execution has terminated
+ this.sendEvent(new Terminate_Event(this.debugTarget)) ;
}
}
@@ -350,11 +337,6 @@ public abstract class AbstractExecutionEngine implements IExecutionEngine {
* @see org.eclipse.papyrus.moka.engine.IExecutionEngine#resume(Resume_Request request)
*/
public abstract void resume(Resume_Request request) ;
-
- /* (non-Javadoc)
- * @see org.eclipse.papyrus.moka.engine.IExecutionEngine#resume()
- */
- public abstract void resume() ;
// **************************************
// Management of a suspend() request emitted from the debug target.
@@ -395,7 +377,7 @@ public abstract class AbstractExecutionEngine implements IExecutionEngine {
* @see org.eclipse.papyrus.moka.engine.IExecutionEngine#terminate(org.eclipse.papyrus.moka.communication.request.iterminate.Terminate_Request)
*/
public abstract void terminate(Terminate_Request request) ;
-
+
// **************************************
// Management of a getStackFrames() request emitted from the debug target.
// @see IThread.getStackFrames()
@@ -533,4 +515,14 @@ public abstract class AbstractExecutionEngine implements IExecutionEngine {
eventWriter.flush();
}
}
+
+ /**
+ * Convenience method to set the value of property isTerminated
+ *
+ * @param isTerminated
+ */
+ public void setIsTerminated(boolean isTerminated) {
+ this.isTerminated = true ;
+ }
+
}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/IExecutionEngine.java b/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/IExecutionEngine.java
index f5dc08f2214..a5a94f53e26 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/IExecutionEngine.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/IExecutionEngine.java
@@ -38,27 +38,7 @@ import org.eclipse.papyrus.moka.debug.MokaThread;
public interface IExecutionEngine {
/**
- * Returns true if this execution engine supports the debug mode
- *
- * @return true if debug mode is supported, false otherwise
- */
- public boolean isDebugModeSupported() ;
-
- /**
- * Initializes the engine for an execution in "Run" mode
- *
- * @param eObjectToExecute The object to be executed by the engine
- * @param args Optional arguments for the execution of the object
- */
- public void initRun(EObject eObjectToExecute, String[] args) ;
-
- /**
- * Resumes the execution of the target program, after initialization in "Run" mode
- */
- public void resume() ;
-
- /**
- * Initializes the engine for an execution in "Debug" mode.
+ * Initializes the engine.
* This requires to know the debugTarget which will communicate with this execution engine.
* Since the debugTarget and the execution engine must run asynchronously, they communicate through sockets.
* requestPort indicates the address of the socket through which requests emitted from the debug target flow.
@@ -74,7 +54,7 @@ public interface IExecutionEngine {
* @throws UnknownHostException when problems occur while establishing connection with the sockets
* @throws IOException when problems occur while reading/writing on sockets
*/
- public void initDebug(EObject eObjectToExecute, String[] args, MokaDebugTarget debugTarget, int requestPort, int replyPort, int eventPort) throws UnknownHostException, IOException ;
+ public void init(EObject eObjectToExecute, String[] args, MokaDebugTarget debugTarget, int requestPort, int replyPort, int eventPort) throws UnknownHostException, IOException ;
/**
* Initialization of the execution engine with given arguments. This is supposed to be called in the implementation of initRun and/or initDebug methods
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/MokaExecutionEngineJob.java b/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/MokaExecutionEngineJob.java
index a53334f3508..a0693239569 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/MokaExecutionEngineJob.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/engine/MokaExecutionEngineJob.java
@@ -19,6 +19,7 @@ import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Status;
import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.papyrus.moka.debug.MokaDebugTarget;
/**
* A Job for hosting the execution of an engine
@@ -30,6 +31,8 @@ public class MokaExecutionEngineJob extends Job {
* The engine performing the execution
*/
protected IExecutionEngine engine ;
+
+ protected MokaDebugTarget debugTarget ;
public MokaExecutionEngineJob(String name, IExecutionEngine engine) {
super(name) ;
@@ -37,7 +40,7 @@ public class MokaExecutionEngineJob extends Job {
}
/**
- * Calls the start method of the owned execution engine
+ * Start the execution engine
*
* (non-Javadoc)
* @see org.eclipse.core.runtime.jobs.Job#run(org.eclipse.core.runtime.IProgressMonitor)
@@ -49,6 +52,14 @@ public class MokaExecutionEngineJob extends Job {
return new Status(IStatus.ERROR, "org.eclipse.papyrus.moka", e.getMessage());
}
return new Status(IStatus.OK, "org.eclipse.papyrus.moka", "Execution was successfull");
- }
+ }
+
+ public void setDebugTarget(MokaDebugTarget debugTarget) {
+ this.debugTarget = debugTarget ;
+ }
+
+ public MokaDebugTarget getDebugTarget() {
+ return this.debugTarget ;
+ }
}
diff --git a/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/launch/MokaLaunchDelegate.java b/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/launch/MokaLaunchDelegate.java
index 40b78450826..a68112161aa 100644
--- a/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/launch/MokaLaunchDelegate.java
+++ b/sandbox/Moka/org.eclipse.papyrus.moka/src/org/eclipse/papyrus/moka/launch/MokaLaunchDelegate.java
@@ -25,10 +25,8 @@ import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.Status;
-import org.eclipse.core.runtime.jobs.Job;
import org.eclipse.debug.core.ILaunch;
import org.eclipse.debug.core.ILaunchConfiguration;
-import org.eclipse.debug.core.ILaunchManager;
import org.eclipse.debug.core.model.ILaunchConfigurationDelegate;
import org.eclipse.debug.core.model.IProcess;
import org.eclipse.debug.core.model.LaunchConfigurationDelegate;
@@ -84,7 +82,7 @@ public class MokaLaunchDelegate extends LaunchConfigurationDelegate implements I
this.abort("Could not instantiate execution engine", null) ;
// Create a job for the execution of this engine
- Job engineJob = new MokaExecutionEngineJob("Execution Engine Job", engine) ;
+ MokaExecutionEngineJob engineJob = new MokaExecutionEngineJob("Execution Engine Job", engine) ;
// retrieves values for the various attributes associated with the launch configuration
String resourceURI = configuration.getAttribute(URI_ATTRIBUTE_NAME, "") ;
@@ -114,38 +112,30 @@ public class MokaLaunchDelegate extends LaunchConfigurationDelegate implements I
int requestPort = -1;
int replyPort = -1;
int eventPort = -1;
-
- if (mode.equals(ILaunchManager.DEBUG_MODE)) {
- requestPort = findFreePort();
- eventPort = findFreePort();
- replyPort = findFreePort();
- if (requestPort == -1 || replyPort == -1 || eventPort == -1) {
- this.abort("Unable to find free port", null);
- }
+ requestPort = findFreePort();
+ eventPort = findFreePort();
+ replyPort = findFreePort();
+ if (requestPort == -1 || replyPort == -1 || eventPort == -1) {
+ this.abort("Unable to find free port", null);
}
// The resulting job is used for the creation of MokaRuntimeProcess, thereby simulating a real, physical process
IProcess process = new MokaProcess(launch, engineJob, "Moka runtime process", new HashMap<String,String>()) ;
- // Initializes the engine, as well as the debug target if we are in DEBUG_MODE
- if (mode.equals(ILaunchManager.DEBUG_MODE) && engine.isDebugModeSupported()) {
- MokaDebugTarget target = new MokaDebugTarget(launch, process);
- try {
- engine.initDebug(eObjectToExecute, args, target, requestPort, replyPort, eventPort) ;
- } catch (UnknownHostException e) {
- e.printStackTrace();
- } catch (IOException e) {
- e.printStackTrace();
- }
+ // Initializes the engine as well as the debug target
+ MokaDebugTarget target = new MokaDebugTarget(launch, process);
+ try {
+ engine.init(eObjectToExecute, args, target, requestPort, replyPort, eventPort) ;
target.connect(requestPort, replyPort, eventPort) ;
launch.addDebugTarget(target);
+ engineJob.setDebugTarget(target) ;
+ engineJob.schedule() ;
+ } catch (UnknownHostException e) {
+ org.eclipse.papyrus.infra.core.Activator.log.equals(e) ;
+ } catch (IOException e) {
+ org.eclipse.papyrus.infra.core.Activator.log.equals(e) ;
}
- else {
- engine.initRun(eObjectToExecute, args) ;
- }
-
- // Schedules the job so that execution effectively starts
- engineJob.schedule() ;
+
}
/**
@@ -168,9 +158,9 @@ public class MokaLaunchDelegate extends LaunchConfigurationDelegate implements I
final Object o = e.createExecutableExtension("class");
return (IExecutionEngine)o ;
} catch (CoreException ex) {
-
+ org.eclipse.papyrus.infra.core.Activator.log.equals(ex) ;
} catch (Exception ex) {
-
+ org.eclipse.papyrus.infra.core.Activator.log.equals(ex) ;
}
// If null is returned, the calling method (launch) fires a CoreException
return null ;

Back to the top