Bug 568555 - [Robotics] C++ code of skill realizations not generated for imported component definition models
* Changed initialization of skill realization package creator class in RosTransformations
- Use system.componentList instead of project.compDefs
Change-Id: I23c05f7c1dcfcfe54e1f3910bfc99a35b26e7855
Signed-off-by: Matteo MORELLI <matteo.morelli@cea.fr>
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen/src/org/eclipse/papyrus/robotics/ros2/codegen/RosTransformations.xtend b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen/src/org/eclipse/papyrus/robotics/ros2/codegen/RosTransformations.xtend
index ab5cb20..128136f 100644
--- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen/src/org/eclipse/papyrus/robotics/ros2/codegen/RosTransformations.xtend
+++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen/src/org/eclipse/papyrus/robotics/ros2/codegen/RosTransformations.xtend
@@ -73,7 +73,7 @@
ct.componentTrafo(compDef, msgPkgCreator)
}
if (!system.uniqueSkills.nullOrEmpty) {
- skrPkgCreator = new CreateSkillRelizationPackage(system, compDefs);
+ skrPkgCreator = new CreateSkillRelizationPackage(system, system.componentList);
skrPkgCreator.createSkillRealizationPkg(pkg)
}
for (compDef : compDefs) {
diff --git a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen/src/org/eclipse/papyrus/robotics/ros2/codegen/skillrealization/CreateSkillRelizationPackage.xtend b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen/src/org/eclipse/papyrus/robotics/ros2/codegen/skillrealization/CreateSkillRelizationPackage.xtend
index 4cc303a..bdd0221 100644
--- a/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen/src/org/eclipse/papyrus/robotics/ros2/codegen/skillrealization/CreateSkillRelizationPackage.xtend
+++ b/plugins/ros2/org.eclipse.papyrus.robotics.ros2.codegen/src/org/eclipse/papyrus/robotics/ros2/codegen/skillrealization/CreateSkillRelizationPackage.xtend
@@ -14,25 +14,23 @@
package org.eclipse.papyrus.robotics.ros2.codegen.skillrealization
-import java.util.ArrayList
-import java.util.HashMap
import java.util.Map
-import org.eclipse.papyrus.designer.languages.common.base.file.FileSystemAccessFactory
-import org.eclipse.papyrus.designer.transformation.base.utils.TransformationException
+import org.eclipse.uml2.uml.Package
+import org.eclipse.uml2.uml.Class
+import java.util.HashMap
import org.eclipse.papyrus.infra.tools.file.ProjectBasedFileAccess
import org.eclipse.papyrus.robotics.core.utils.PortUtils
-import org.eclipse.papyrus.robotics.profile.robotics.skills.SkillDefinition
-import org.eclipse.papyrus.robotics.profile.robotics.skills.SkillSemantic
-import org.eclipse.papyrus.robotics.ros2.codegen.build.CreateSkillRealizCMakeLists
-import org.eclipse.papyrus.robotics.ros2.codegen.build.CreateSkillRealizPackageXML
import org.eclipse.papyrus.robotics.ros2.codegen.utils.ProjectTools
-import org.eclipse.uml2.uml.Class
-import org.eclipse.uml2.uml.Interface
-import org.eclipse.uml2.uml.Package
-
import static extension org.eclipse.papyrus.robotics.core.utils.InteractionUtils.*
import static extension org.eclipse.papyrus.robotics.ros2.codegen.utils.SkillUtils.*
-
+import org.eclipse.uml2.uml.Interface
+import org.eclipse.papyrus.designer.transformation.base.utils.TransformationException
+import org.eclipse.papyrus.robotics.ros2.codegen.build.CreateSkillRealizCMakeLists
+import org.eclipse.papyrus.designer.languages.common.base.file.FileSystemAccessFactory
+import org.eclipse.papyrus.robotics.profile.robotics.skills.SkillDefinition
+import org.eclipse.papyrus.robotics.profile.robotics.skills.SkillSemantic
+import org.eclipse.papyrus.robotics.ros2.codegen.build.CreateSkillRealizPackageXML
+import java.util.List
/**
* Handle creation of a ROS2 skill realization package
*/
@@ -80,7 +78,7 @@
* Assuming default semantics of skill is used.
* TODO. Manage the general case where alternative realization semantics can be specified
*/
- new(Class system, ArrayList<Class> components) {
+ new(Class system, List<Class> components) {
packageNames = new HashMap<String, Boolean>() // TODO
skdefToSemanticsMap = new HashMap<SkillDefinition, SkillSemantic>()