Extended output buffer to provide current file extension; modified root transformers
diff --git a/framework/plugins/org.eclipse.app4mc.transformation/src/org/eclipse/app4mc/transformation/util/OutputBuffer.java b/framework/plugins/org.eclipse.app4mc.transformation/src/org/eclipse/app4mc/transformation/util/OutputBuffer.java
index ba260d2..9646848 100644
--- a/framework/plugins/org.eclipse.app4mc.transformation/src/org/eclipse/app4mc/transformation/util/OutputBuffer.java
+++ b/framework/plugins/org.eclipse.app4mc.transformation/src/org/eclipse/app4mc/transformation/util/OutputBuffer.java
@@ -103,6 +103,13 @@
return outputFolder;
}
+ public String getFileExtension(String type) {
+ TypedBuffer typedBuffer = filetypeToBufferMap.get(type);
+ if (typedBuffer == null)
+ return null;
+
+ return typedBuffer.getFileExtension();
+ }
/**
* @return: true if buffer has already been created
*/
@@ -161,6 +168,9 @@
return isNewBuffer;
}
+ public String getFileExtension() {
+ return fileExtension;
+ }
}
}
diff --git a/load_generator/commons/plugins/org.eclipse.app4mc.slg.commons.m2t/src/org/eclipse/app4mc/slg/commons/m2t/transformers/SLGBaseSettings.java b/load_generator/commons/plugins/org.eclipse.app4mc.slg.commons.m2t/src/org/eclipse/app4mc/slg/commons/m2t/transformers/SLGBaseSettings.java
index aa8fd76..4fa10d2 100644
--- a/load_generator/commons/plugins/org.eclipse.app4mc.slg.commons.m2t/src/org/eclipse/app4mc/slg/commons/m2t/transformers/SLGBaseSettings.java
+++ b/load_generator/commons/plugins/org.eclipse.app4mc.slg.commons.m2t/src/org/eclipse/app4mc/slg/commons/m2t/transformers/SLGBaseSettings.java
@@ -25,7 +25,7 @@
}
public static final String SRC_TYPE = "SRC";
- public static final String SRC_EXT = ".c";
+ public static final String SRC_EXT = ".cpp";
public static final String SRC_FOLDER = "/_src/";
public static final String INC_TYPE = "INC";
diff --git a/load_generator/commons/plugins/org.eclipse.app4mc.slg.commons.m2t/src/org/eclipse/app4mc/slg/commons/m2t/transformers/SLGBaseTransformer.java b/load_generator/commons/plugins/org.eclipse.app4mc.slg.commons.m2t/src/org/eclipse/app4mc/slg/commons/m2t/transformers/SLGBaseTransformer.java
index d5334a4..dc6cda1 100644
--- a/load_generator/commons/plugins/org.eclipse.app4mc.slg.commons.m2t/src/org/eclipse/app4mc/slg/commons/m2t/transformers/SLGBaseTransformer.java
+++ b/load_generator/commons/plugins/org.eclipse.app4mc.slg.commons.m2t/src/org/eclipse/app4mc/slg/commons/m2t/transformers/SLGBaseTransformer.java
@@ -15,10 +15,8 @@
package org.eclipse.app4mc.slg.commons.m2t.transformers;
-import static org.eclipse.app4mc.slg.commons.m2t.transformers.SLGBaseSettings.INC_EXT;
import static org.eclipse.app4mc.slg.commons.m2t.transformers.SLGBaseSettings.INC_FOLDER;
import static org.eclipse.app4mc.slg.commons.m2t.transformers.SLGBaseSettings.INC_TYPE;
-import static org.eclipse.app4mc.slg.commons.m2t.transformers.SLGBaseSettings.SRC_EXT;
import static org.eclipse.app4mc.slg.commons.m2t.transformers.SLGBaseSettings.SRC_FOLDER;
import static org.eclipse.app4mc.slg.commons.m2t.transformers.SLGBaseSettings.SRC_TYPE;
@@ -59,11 +57,13 @@
public String getIncModulePath(SLGTranslationUnit tu) { return tu.getModulePath() + INC_FOLDER + tu.getModuleName(); }
public String getSrcModulePath(SLGTranslationUnit tu) { return tu.getModulePath() + SRC_FOLDER + tu.getModuleName(); }
- public String getSrcFile(SLGTranslationUnit tu) { return tu.getModuleName() + SRC_EXT; }
- public String getIncFile(SLGTranslationUnit tu) { return tu.getModuleName() + INC_EXT; }
-
- public String getSrcPath(SLGTranslationUnit tu) { return tu.getModulePath() + SRC_FOLDER + getSrcFile(tu); }
public String getIncPath(SLGTranslationUnit tu) { return tu.getModulePath() + INC_FOLDER + getIncFile(tu); }
+ public String getSrcPath(SLGTranslationUnit tu) { return tu.getModulePath() + SRC_FOLDER + getSrcFile(tu); }
+
+ // Attributes derived from translation unit and output buffer (!)
+
+ public String getIncFile(SLGTranslationUnit tu) { return tu.getModuleName() + outputBuffer.getFileExtension(INC_TYPE); }
+ public String getSrcFile(SLGTranslationUnit tu) { return tu.getModuleName() + outputBuffer.getFileExtension(SRC_TYPE); }
// Generic cache handling
@@ -80,8 +80,7 @@
return Collections.emptyMap();
}
-
- // still necessary ???
+ // Property access
@Inject Properties properties;
diff --git a/load_generator/linux/plugins/org.eclipse.app4mc.slg.linux/src/org/eclipse/app4mc/slg/linux/transformers/LinuxBaseTransformer.java b/load_generator/linux/plugins/org.eclipse.app4mc.slg.linux/src/org/eclipse/app4mc/slg/linux/transformers/LinuxBaseTransformer.java
index 7e689b6..7915d2f 100644
--- a/load_generator/linux/plugins/org.eclipse.app4mc.slg.linux/src/org/eclipse/app4mc/slg/linux/transformers/LinuxBaseTransformer.java
+++ b/load_generator/linux/plugins/org.eclipse.app4mc.slg.linux/src/org/eclipse/app4mc/slg/linux/transformers/LinuxBaseTransformer.java
@@ -15,10 +15,8 @@
package org.eclipse.app4mc.slg.linux.transformers;
-import static org.eclipse.app4mc.slg.linux.transformers.LinuxBaseSettings.INC_EXT;
import static org.eclipse.app4mc.slg.linux.transformers.LinuxBaseSettings.INC_FOLDER;
import static org.eclipse.app4mc.slg.linux.transformers.LinuxBaseSettings.INC_TYPE;
-import static org.eclipse.app4mc.slg.linux.transformers.LinuxBaseSettings.SRC_EXT;
import static org.eclipse.app4mc.slg.linux.transformers.LinuxBaseSettings.SRC_FOLDER;
import static org.eclipse.app4mc.slg.linux.transformers.LinuxBaseSettings.SRC_TYPE;
@@ -59,11 +57,13 @@
public String getIncModulePath(SLGTranslationUnit tu) { return tu.getModulePath() + INC_FOLDER + tu.getModuleName(); }
public String getSrcModulePath(SLGTranslationUnit tu) { return tu.getModulePath() + SRC_FOLDER + tu.getModuleName(); }
- public String getSrcFile(SLGTranslationUnit tu) { return tu.getModuleName() + SRC_EXT; }
- public String getIncFile(SLGTranslationUnit tu) { return tu.getModuleName() + INC_EXT; }
-
- public String getSrcPath(SLGTranslationUnit tu) { return tu.getModulePath() + SRC_FOLDER + getSrcFile(tu); }
public String getIncPath(SLGTranslationUnit tu) { return tu.getModulePath() + INC_FOLDER + getIncFile(tu); }
+ public String getSrcPath(SLGTranslationUnit tu) { return tu.getModulePath() + SRC_FOLDER + getSrcFile(tu); }
+
+ // Attributes derived from translation unit and output buffer (!)
+
+ public String getIncFile(SLGTranslationUnit tu) { return tu.getModuleName() + outputBuffer.getFileExtension(INC_TYPE); }
+ public String getSrcFile(SLGTranslationUnit tu) { return tu.getModuleName() + outputBuffer.getFileExtension(SRC_TYPE); }
// Generic cache handling
diff --git a/load_generator/ros2/plugins/org.eclipse.app4mc.slg.ros2/src/org/eclipse/app4mc/slg/ros2/transformers/RosBaseTransformer.java b/load_generator/ros2/plugins/org.eclipse.app4mc.slg.ros2/src/org/eclipse/app4mc/slg/ros2/transformers/RosBaseTransformer.java
index 50eae90..6b67319 100644
--- a/load_generator/ros2/plugins/org.eclipse.app4mc.slg.ros2/src/org/eclipse/app4mc/slg/ros2/transformers/RosBaseTransformer.java
+++ b/load_generator/ros2/plugins/org.eclipse.app4mc.slg.ros2/src/org/eclipse/app4mc/slg/ros2/transformers/RosBaseTransformer.java
@@ -15,10 +15,8 @@
package org.eclipse.app4mc.slg.ros2.transformers;
-import static org.eclipse.app4mc.slg.ros2.transformers.RosBaseSettings.INC_EXT;
import static org.eclipse.app4mc.slg.ros2.transformers.RosBaseSettings.INC_FOLDER;
import static org.eclipse.app4mc.slg.ros2.transformers.RosBaseSettings.INC_TYPE;
-import static org.eclipse.app4mc.slg.ros2.transformers.RosBaseSettings.SRC_EXT;
import static org.eclipse.app4mc.slg.ros2.transformers.RosBaseSettings.SRC_FOLDER;
import static org.eclipse.app4mc.slg.ros2.transformers.RosBaseSettings.SRC_TYPE;
@@ -59,11 +57,13 @@
public String getIncModulePath(SLGTranslationUnit tu) { return tu.getModulePath() + INC_FOLDER + tu.getModuleName(); }
public String getSrcModulePath(SLGTranslationUnit tu) { return tu.getModulePath() + SRC_FOLDER + tu.getModuleName(); }
- public String getSrcFile(SLGTranslationUnit tu) { return tu.getModuleName() + SRC_EXT; }
- public String getIncFile(SLGTranslationUnit tu) { return tu.getModuleName() + INC_EXT; }
-
- public String getSrcPath(SLGTranslationUnit tu) { return tu.getModulePath() + SRC_FOLDER + getSrcFile(tu); }
public String getIncPath(SLGTranslationUnit tu) { return tu.getModulePath() + INC_FOLDER + getIncFile(tu); }
+ public String getSrcPath(SLGTranslationUnit tu) { return tu.getModulePath() + SRC_FOLDER + getSrcFile(tu); }
+
+ // Attributes derived from translation unit and output buffer (!)
+
+ public String getIncFile(SLGTranslationUnit tu) { return tu.getModuleName() + outputBuffer.getFileExtension(INC_TYPE); }
+ public String getSrcFile(SLGTranslationUnit tu) { return tu.getModuleName() + outputBuffer.getFileExtension(SRC_TYPE); }
// Generic cache handling