Browse Source

added produces and a cli product with a custom IApplication

Kenneth Lausdahl 4 years ago
parent
commit
a897512078

+ 42 - 0
DSL_SemanticAdaptation/features/core/feature.xml

@@ -49,4 +49,46 @@
          version="0.0.0"
          unpack="false"/>
 
+   <plugin
+         id="be.uantwerpen.ansymo.semanticadaptation.cg.canonical"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="be.uantwerpen.ansymo.semanticadaptation.cg.chain"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="be.uantwerpen.ansymo.semanticadaptation.ide"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="be.uantwerpen.ansymo.semanticadaptation.ide.platform"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="be.uantwerpen.ansymo.semanticadaptation.log"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="be.uantwerpen.ansymo.semanticadaptation.ui"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
 </feature>

+ 18 - 0
DSL_SemanticAdaptation/platform/META-INF/MANIFEST.MF

@@ -0,0 +1,18 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: be.uantwerpen.ansymo.semanticadaptation.ide.platform
+Bundle-SymbolicName: be.uantwerpen.ansymo.semanticadaptation.ide.platform;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Localization: plugin
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.ui,
+ org.eclipse.ui.intro,
+ org.eclipse.ui.ide.application,
+ org.eclipse.ui.views.log,
+ org.apache.commons.lang;bundle-version="2.6.0"
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Bundle-Vendor: SA
+Bundle-Activator: be.uantwerpen.ansymo.semanticadaptation.ide.platform.Activator
+Bundle-ActivationPolicy: lazy
+Bundle-ClassPath: .
+

+ 8 - 0
DSL_SemanticAdaptation/platform/build.properties

@@ -0,0 +1,8 @@
+bin.includes = META-INF/,\
+               plugin.properties,\
+               build.properties,\
+               plugin.xml,\
+               .
+
+
+source.. = src/main/java/

+ 24 - 0
DSL_SemanticAdaptation/platform/plugin.properties

@@ -0,0 +1,24 @@
+WARNING_FOR_DEVS=!edit the file in src/main/resources instead of this one!
+productName=Overture Tools
+pluginName=Overture Platform
+providerName=Overture
+workbenchName=Overture Platform Workbench
+productVersion=2.4.5-SNAPSHOT
+productBuild=Release/2.4.4-16-g6641869-dirty
+aboutText=Overture Platform\n\
+\n\
+Version: 2.4.5-SNAPSHOT\n\
+Build date: 2017 Aug 01 13:38 CEST\n\
+Git commit description: Release/2.4.4-16-g6641869-dirty\n\
+\n\
+Copyright (c) Overture contributors and others 2009-2016.  All rights reserved.\n\
+Visit http://www.overturetool.org\n\
+\n\
+This offering is powered by Eclipse technology and includes\n\
+Eclipse plug-ins that can be installed and used with other\n\
+Eclipse 4.6-based offerings.\n\
+\n
+
+
+
+

+ 50 - 0
DSL_SemanticAdaptation/platform/plugin.xml

@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.2"?>
+<plugin>
+	<extension
+      id="product"
+      point="org.eclipse.core.runtime.products">
+    <product
+        application="org.eclipse.ui.ide.workbench"
+        name="Semantic Adaptation">
+      <property
+          name="windowImages"
+          value="/icons/ctool16/overture_misc.png,/icons/ctool32/overture_misc.png,/icons/ctool48/overture_misc.png,/icons/ctool64/overture_misc.png,/icons/ctool128/overture_misc.png">
+      </property>
+      <property
+          name="aboutText"
+          value="%aboutText">
+      </property>
+      <property
+          name="aboutImage"
+          value="/icons/ctool128/overture_misc.png">
+      </property>
+      <property
+          name="startupForegroundColor"
+          value="FFFFFF">
+      </property>
+      <property
+          name="startupProgressRect"
+          value="75,235,300,20">
+      </property>
+      <property
+          name="startupMessageRect"
+          value="75,250,300,15">
+      </property>
+      <property
+          name="appName"
+          value="Semantic Adaptation">
+      </property>
+      
+    </product>
+	</extension>
+	
+	<extension
+			id="be.uantwerpen.ansymo.semanticadaptation.ide.platform.application.cli"
+      point="org.eclipse.core.runtime.applications">
+		<application>
+			<run class="be.uantwerpen.ansymo.semanticadaptation.ide.platform.SaCli"/>
+		</application>
+	</extension> 
+	
+</plugin>

+ 112 - 0
DSL_SemanticAdaptation/platform/pom.xml

@@ -0,0 +1,112 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+				 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+
+<parent>
+    <relativePath>../pom.xml</relativePath>
+    <groupId>be.uantwerpen.ansymo.semanticadaptation</groupId>
+    <artifactId>parent</artifactId>
+    <version>1.0.0-SNAPSHOT</version>
+  </parent>
+
+  <packaging>eclipse-plugin</packaging>
+
+  <groupId>be.uantwerpen.ansymo.semanticadaptation.ide</groupId>
+  <artifactId>be.uantwerpen.ansymo.semanticadaptation.ide.platform</artifactId>
+  <name>be.uantwerpen.ansymo.semanticadaptation.ide.platform</name>
+
+  <properties>
+    <git-commit-id.skip>false</git-commit-id.skip>
+  </properties>
+
+  <build>
+    <resources>
+      <resource>
+        <directory>src/main/resources</directory>
+        <targetPath>${project.basedir}</targetPath>
+        <filtering>true</filtering>
+        <includes>
+          <include>plugin.properties</include>
+        </includes>
+      </resource>
+    </resources>
+
+    <plugins>
+      <plugin>
+        <!-- https://github.com/ktoso/maven-git-commit-id-plugin -->
+        <groupId>pl.project13.maven</groupId>
+        <artifactId>git-commit-id-plugin</artifactId>
+        <executions>
+          <execution>
+            <goals>
+              <goal>revision</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+					<dotGitDirectory>../../.git</dotGitDirectory>
+          <skip>${git-commit-id.skip}</skip>
+          <prefix>git</prefix>
+          <dateFormat>yyyy MMM dd HH:mm z</dateFormat>
+          <verbose>false</verbose>
+          <gitDescribe>
+            <tags>true</tags>
+            <skip>false</skip>
+            <always>false</always>
+            <abbrev>7</abbrev>
+            <dirty></dirty>
+            <forceLongFormat>false</forceLongFormat>
+          </gitDescribe>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+
+
+	
+	<profiles>
+
+		<profile>
+
+			<id>release</id>
+			<build>
+				
+
+				<plugins>
+					<plugin>
+						<!-- https://github.com/ktoso/maven-git-commit-id-plugin -->
+						<groupId>pl.project13.maven</groupId>
+						<artifactId>git-commit-id-plugin</artifactId>
+						<executions>
+							<execution>
+								<goals>
+									<goal>revision</goal>
+								</goals>
+							</execution>
+						</executions>
+						<configuration>
+							<dotGitDirectory>../../.git</dotGitDirectory>
+							<skip>${git-commit-id.skip}</skip>
+							<prefix>git</prefix>
+							<dateFormat>yyyy MMM dd HH:mm z</dateFormat>
+							<verbose>false</verbose>
+
+							<gitDescribe>
+								<tags>true</tags>
+								<skip>false</skip>
+								<always>false</always>
+								<abbrev>7</abbrev>
+								<!-- The release is dirty because of the sed in overture.product, so add something in the dirty post fix that doesnt look dirty-->
+								<dirty>.</dirty>
+								<forceLongFormat>false</forceLongFormat>
+							</gitDescribe>
+						</configuration>
+					</plugin>
+				</plugins>
+			</build>
+			
+		</profile>
+
+		
+	</profiles>
+</project>

+ 55 - 0
DSL_SemanticAdaptation/platform/src/main/java/be/uantwerpen/ansymo/semanticadaptation/ide/platform/Activator.java

@@ -0,0 +1,55 @@
+package be.uantwerpen.ansymo.semanticadaptation.ide.platform;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+
+public class Activator extends AbstractUIPlugin
+{
+
+	private static Activator fgPlugin;
+			
+	public static boolean DEBUG = true;
+	
+	public static void log(IStatus status) {
+		getDefault().getLog().log(status);
+	}
+	
+		
+	private boolean fTrace = false;
+		
+	public boolean isTraceMode() {
+		return fTrace;
+	}
+
+
+
+	public static Activator getDefault() {		
+		return fgPlugin;
+	}
+
+	public Activator() {
+		super();	
+		fgPlugin = this;
+	}
+	
+	@Override
+	public void start(BundleContext context) throws Exception {
+		super.start(context);		
+		
+		//getDefault().getLog().log(new Status(Status.INFO, PLUGIN_ID, Status.OK, "TCLDebugPlugin starting...", null));
+	}
+	
+	@Override
+	@SuppressWarnings("deprecation")
+	public void stop(BundleContext context) throws Exception {
+		try {			
+			savePluginPreferences();
+		} finally {
+			fgPlugin = null;
+			super.stop(context);
+		}
+	}
+
+}

+ 23 - 0
DSL_SemanticAdaptation/platform/src/main/java/be/uantwerpen/ansymo/semanticadaptation/ide/platform/SaCli.java

@@ -0,0 +1,23 @@
+package be.uantwerpen.ansymo.semanticadaptation.ide.platform;
+
+import org.apache.commons.lang.StringUtils;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.equinox.app.IApplication;
+import org.eclipse.equinox.app.IApplicationContext;
+
+public class SaCli implements IApplication {
+
+	@Override
+	public Object start(IApplicationContext arg0) throws Exception {
+		System.out.println("Argument context is: "+arg0);
+		System.out.println("Arguments is: "+arg0.getArguments());
+		System.out.println("Arguments is: "+StringUtils.join(Platform.getApplicationArgs(),","));
+		return IApplication.EXIT_OK;
+	}
+
+	@Override
+	public void stop() {
+		
+	}
+
+}

+ 17 - 0
DSL_SemanticAdaptation/pom.xml

@@ -26,6 +26,8 @@
 		<module>be.uantwerpen.ansymo.semanticadaptation.cg.canonical.tests</module>
  <module>features</module>
  <module>repository</module>
+<module>platform</module>
+<module>product</module>
 	</modules>
 
 	<properties>
@@ -214,6 +216,21 @@
 						</lifecycleMappingMetadata>
 					</configuration>
 				</plugin>
+
+ <plugin>
+          <groupId>pl.project13.maven</groupId>
+          <artifactId>git-commit-id-plugin</artifactId>
+          <version>2.2.0</version>
+          <configuration>
+          </configuration>
+        </plugin>
+
+ <plugin>
+          <groupId>org.apache.maven.plugins</groupId>
+          <artifactId>maven-resources-plugin</artifactId>
+          <version>2.7</version>
+        </plugin>
+
 				
 			</plugins>
 		</pluginManagement>

+ 20 - 0
DSL_SemanticAdaptation/product/overture.p2.inf

@@ -0,0 +1,20 @@
+instructions.configure=\
+  addRepository(type:0,name:Overture,enabled:false,location:http${#58}//dl.bintray.com/overturetool/overturetool/);\
+  addRepository(type:1,name:Overture,enabled:false,location:http${#58}//dl.bintray.com/overturetool/overturetool/);\
+  addRepository(type:0,name:Overture Development,enabled:true,location:http${#58}//dl.bintray.com/overturetool/overturetool-development/);\
+  addRepository(type:1,name:Overture Development,enabled:true,location:http${#58}//dl.bintray.com/overturetool/overturetool-development/);\
+  addRepository(type:0,name:Overture VDM2C Development,enabled:true,location:http${#58}//overture.au.dk/vdm2c/master/repository/);\
+  addRepository(type:1,name:Overture VDM2C Development,enabled:true,location:http${#58}//overture.au.dk/vdm2c/master/repository/);\
+  addRepository(type:0,name:Overture Graphics Plugin,enabled:true,location:http${#58}//overture.au.dk/overture-graphics-plugin/master/repository/);\
+  addRepository(type:1,name:Overture Graphics Plugin,enabled:true,location:http${#58}//overture.au.dk/overture-graphics-plugin/master/repository/);\
+  addRepository(type:0,name:Neon,enabled:true,location:http${#58}//download.eclipse.org/releases/neon/);\
+  addRepository(type:1,name:Neon,enabled:true,location:http${#58}//download.eclipse.org/releases/neon/);\
+  addRepository(type:0,name:The Eclipse Project Updates,enabled:true,location:http${#58}//download.eclipse.org/eclipse/updates/4.6);\
+  addRepository(type:1,name:The Eclipse Project Updates,enabled:true,location:http${#58}//download.eclipse.org/eclipse/updates/4.6);\
+  addRepository(type:0,name:JODTool,enabled:true,location:http${#58}//aofa.csce.kyushu-u.ac.jp/JODTool/);\
+  addRepository(type:1,name:JODTool,enabled:true,location:http${#58}//aofa.csce.kyushu-u.ac.jp/JODTool/);
+instructions.configure.import=\
+  org.eclipse.equinox.p2.touchpoint.natives.chmod,\
+  org.eclipse.equinox.p2.touchpoint.natives.copy,\
+  org.eclipse.equinox.p2.touchpoint.natives.remove
+

+ 200 - 0
DSL_SemanticAdaptation/product/pom.xml

@@ -0,0 +1,200 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<relativePath>../pom.xml</relativePath>
+		<groupId>be.uantwerpen.ansymo.semanticadaptation</groupId>
+		<artifactId>parent</artifactId>
+		<version>1.0.0-SNAPSHOT</version>
+	</parent>
+
+	<packaging>eclipse-repository</packaging>
+
+	<groupId>be.uantwerpen.ansymo.semanticadaptation.ide</groupId>
+	<artifactId>be.uantwerpen.ansymo.semanticadaptation.product</artifactId>
+	<name>SA IDE Standalone Product</name>
+
+	<build>
+		<resources>
+			<resource>
+				<targetPath>${basedir}</targetPath>
+				<directory>${basedir}/src/main/resources/p2</directory>
+				<filtering>true</filtering>
+			</resource>
+			<resource>
+				<targetPath>${basedir}</targetPath>
+				<directory>${basedir}/src/main/resources/product</directory>
+				<filtering>false</filtering>
+			</resource>
+		</resources>
+		<plugins>
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-resources-plugin</artifactId>
+				<executions>
+					<execution>
+						<id>p2-inf</id>
+						<goals>
+							<goal>resources</goal>
+						</goals>
+						<phase>generate-resources</phase>
+					</execution>
+				</executions>
+				<configuration>
+					<overwrite>true</overwrite>
+				</configuration>
+			</plugin>
+
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>tycho-p2-director-plugin</artifactId>
+				<executions>
+					<execution>
+						<id>materialize-products</id>
+						<goals>
+							<goal>materialize-products</goal>
+						</goals>
+					</execution>
+					<execution>
+						<id>archive-products</id>
+						<goals>
+							<goal>archive-products</goal>
+						</goals>
+					</execution>
+				</executions>
+				<configuration>
+					<products>
+						<product>
+							<id>be.uantwerpen.ansymo.semanticadaptation.platform.product</id>
+							<archiveFileName>SemanticAdaptation-${project.version}</archiveFileName>
+							<rootFolder>SemanticAdaptation</rootFolder>
+							<rootFolders>
+								<macosx>SemanticAdaptation.app</macosx>
+							</rootFolders>
+						</product>
+						<product>
+							<id>be.uantwerpen.ansymo.semanticadaptation.platform.product.cli</id>
+							<archiveFileName>SemanticAdaptationCli-${project.version}</archiveFileName>
+							<rootFolder>SemanticAdaptationCli</rootFolder>
+							<rootFolders>
+								<macosx>SemanticAdaptationCli.app</macosx>
+							</rootFolders>
+							<attachId>cli</attachId>
+						</product>
+					</products>
+				</configuration>
+			</plugin>
+
+			<plugin>
+				<artifactId>maven-antrun-plugin</artifactId>
+				<executions>
+					<execution>
+						<phase>process-resources</phase>
+						<configuration>
+							<tasks>
+
+								<replace dir="${basedir}/">
+									<include name="*.product" />
+									<replacefilter token="VERSION" value="${project.version}" />
+								</replace>
+								<replace dir="${basedir}/">
+									<include name="*.product" />
+									<replacefilter token="-SNAPSHOT" value=".qualifier" />
+								</replace>
+							</tasks>
+						</configuration>
+						<goals>
+							<goal>run</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+
+		</plugins>
+		<pluginManagement>
+			<plugins>
+				<!--This plugin's configuration is used to store Eclipse m2e settings 
+					only. It has no influence on the Maven build itself. -->
+				<plugin>
+					<groupId>org.eclipse.m2e</groupId>
+					<artifactId>lifecycle-mapping</artifactId>
+					<version>1.0.0</version>
+					<configuration>
+						<lifecycleMappingMetadata>
+							<pluginExecutions>
+								<pluginExecution>
+									<pluginExecutionFilter>
+										<groupId>
+											org.apache.maven.plugins
+										</groupId>
+										<artifactId>
+											maven-antrun-plugin
+										</artifactId>
+										<versionRange>[1.3,)</versionRange>
+										<goals>
+											<goal>run</goal>
+										</goals>
+									</pluginExecutionFilter>
+									<action>
+										<ignore></ignore>
+									</action>
+								</pluginExecution>
+							</pluginExecutions>
+						</lifecycleMappingMetadata>
+					</configuration>
+				</plugin>
+			</plugins>
+		</pluginManagement>
+	</build>
+
+
+
+
+	<profiles>
+		<profile>
+			<id>release</id>
+			<activation>
+				<activeByDefault>false</activeByDefault>
+			</activation>
+
+			<build>
+				<plugins>
+					<plugin>
+						<artifactId>maven-antrun-plugin</artifactId>
+						<executions>
+							<execution>
+								<phase>process-resources</phase>
+								<configuration>
+									<tasks>
+
+										<replace dir="${basedir}/">
+											<include name="*.product" />
+											<replacefilter
+												token="DELETE.FOR.RELEASE.osgi.instance.area.default" value="osgi.instance.area.default" />
+											<replacefilter token="VERSION" value="${project.version}" />
+											<replacefilter token="-SNAPSHOT" value=".qualifier" />
+										</replace>
+
+										<replace dir="${basedir}/">
+											<include name="overture.p2.inf" />
+											<replacefilter token="name:Overture,enabled:false"
+												value="name:Overture,enabled:true" />
+											<replacefilter token="name:Overture Development,enabled:true"
+												value="name:Overture Development,enabled:false" />
+										</replace>
+									</tasks>
+								</configuration>
+								<goals>
+									<goal>run</goal>
+								</goals>
+							</execution>
+						</executions>
+					</plugin>
+				</plugins>
+			</build>
+
+		</profile>
+	</profiles>
+
+</project>

+ 110 - 0
DSL_SemanticAdaptation/product/sa.product

@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product name="Semantic Adaptation" uid="be.uantwerpen.ansymo.semanticadaptation.platform.product" id="be.uantwerpen.ansymo.semanticadaptation.platform.product" application="org.eclipse.ui.ide.workbench" version="1.0.0.qualifier" useFeatures="true" includeLaunchers="true">
+
+   <aboutInfo>
+      <image path="/icons/ctool128/overture_misc.png"/>
+      <text>
+         %aboutText
+      </text>
+   </aboutInfo>
+
+   <configIni use="default">
+   </configIni>
+
+   <launcherArgs>
+      <vmArgs>-Xmx512m -Dosgi.requiredJavaVersion=1.8
+      </vmArgs>
+      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
+      </vmArgsMac>
+   </launcherArgs>
+
+   <windowImages i16="/icons/ctool16/overture_misc.png" i32="/icons/ctool32/overture_misc.png" i48="/icons/ctool48/overture_misc.png" i64="/icons/ctool64/overture_misc.png" i128="/icons/ctool128/overture_misc.png"/>
+
+   <splash
+      location="be.uantwerpen.ansymo.semanticadaptation.ide.platform"
+      startupProgressRect="75,235,300,20"
+      startupMessageRect="75,250,300,15"
+      startupForegroundColor="FFFFFF" />
+   <launcher name="SA">
+      <solaris/>
+      <win useIco="true">
+         <bmp/>
+      </win>
+   </launcher>
+
+   <intro introId="org.overture.ide.platform.intro"/>
+
+   <vm>
+   </vm>
+
+   <license>
+        <url>www.overturetool.org</url>
+        <text>
+   Overture Tools 
+
+Overture is an open source tool for the Vienna Development Method (VDM). 
+The tool supports different VDM dialects which include the ISO VDM-SL
+standard, as well as the object-oriented extension VDM++ and the real-time
+extension of that called VDM-RT. 
+
+Copyright (C) 2010 Overture contributors and others
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see &lt;http://www.gnu.org/licenses/&gt;.
+         </text>
+   </license>
+
+   <plugins>
+   </plugins>
+
+   <features>
+      <feature id="org.eclipse.equinox.p2.core.feature"/>
+      <feature id="org.eclipse.platform"/>
+      <feature id="org.eclipse.rcp"/>
+      <feature id="org.eclipse.help"/>
+      <feature id="org.eclipse.emf.ecore"/>
+      <feature id="org.eclipse.e4.rcp"/>
+      <feature id="org.eclipse.emf.common"/>
+      <feature id="org.eclipse.equinox.p2.rcp.feature"/>
+      <feature id="org.eclipse.equinox.p2.user.ui"/>
+      <feature id="org.eclipse.equinox.p2.extras.feature"/>
+      <feature id="be.uantwerpen.ansymo.semanticadaptation.features.core" version="1.0.0.qualifier"/>
+      <feature id="org.eclipse.ecf.filetransfer.httpclient4.feature"/>
+      <feature id="org.eclipse.ecf.filetransfer.httpclient4.ssl.feature"/>
+      <feature id="org.eclipse.ecf.core.feature"/>
+      <feature id="org.eclipse.ecf.filetransfer.feature"/>
+      <feature id="org.eclipse.ecf.core.ssl.feature"/>
+      <feature id="org.eclipse.ecf.filetransfer.ssl.feature"/>
+   </features>
+
+   <configurations>
+      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="4" />
+      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.p2.reconciler.dropins" autoStart="true" startLevel="4" />
+      <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
+      <plugin id="org.eclipse.update.configurator" autoStart="true" startLevel="4" />
+      <property name="DELETE.FOR.RELEASE.osgi.instance.area.default" value="@user.home/Documents/Overture/workspace" />
+      <property name="org.eclipse.update.reconcile" value="false" />
+   </configurations>
+
+   <preferencesInfo>
+      <targetfile overwrite="false"/>
+   </preferencesInfo>
+
+   <cssInfo>
+   </cssInfo>
+
+</product>

+ 110 - 0
DSL_SemanticAdaptation/product/saCli.product

@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product name="Semantic Adaptation" uid="be.uantwerpen.ansymo.semanticadaptation.platform.product.cli" id="be.uantwerpen.ansymo.semanticadaptation.platform.product" application="be.uantwerpen.ansymo.semanticadaptation.ide.platform.application.cli" version="1.0.0.qualifier" useFeatures="true" includeLaunchers="true">
+
+   <aboutInfo>
+      <image path="/icons/ctool128/overture_misc.png"/>
+      <text>
+         %aboutText
+      </text>
+   </aboutInfo>
+
+   <configIni use="default">
+   </configIni>
+
+   <launcherArgs>
+      <vmArgs>-Xmx512m -Dosgi.requiredJavaVersion=1.8
+      </vmArgs>
+      <vmArgsMac>-XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
+      </vmArgsMac>
+   </launcherArgs>
+
+   <windowImages i16="/icons/ctool16/overture_misc.png" i32="/icons/ctool32/overture_misc.png" i48="/icons/ctool48/overture_misc.png" i64="/icons/ctool64/overture_misc.png" i128="/icons/ctool128/overture_misc.png"/>
+
+   <splash
+      location="be.uantwerpen.ansymo.semanticadaptation.ide.platform"
+      startupProgressRect="75,235,300,20"
+      startupMessageRect="75,250,300,15"
+      startupForegroundColor="FFFFFF" />
+   <launcher name="SA">
+      <solaris/>
+      <win useIco="true">
+         <bmp/>
+      </win>
+   </launcher>
+
+   <intro introId="org.overture.ide.platform.intro"/>
+
+   <vm>
+   </vm>
+
+   <license>
+        <url>www.overturetool.org</url>
+        <text>
+   Overture Tools 
+
+Overture is an open source tool for the Vienna Development Method (VDM). 
+The tool supports different VDM dialects which include the ISO VDM-SL
+standard, as well as the object-oriented extension VDM++ and the real-time
+extension of that called VDM-RT. 
+
+Copyright (C) 2010 Overture contributors and others
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see &lt;http://www.gnu.org/licenses/&gt;.
+         </text>
+   </license>
+
+   <plugins>
+   </plugins>
+
+   <features>
+      <feature id="org.eclipse.equinox.p2.core.feature"/>
+      <feature id="org.eclipse.platform"/>
+      <feature id="org.eclipse.rcp"/>
+      <feature id="org.eclipse.help"/>
+      <feature id="org.eclipse.emf.ecore"/>
+      <feature id="org.eclipse.e4.rcp"/>
+      <feature id="org.eclipse.emf.common"/>
+      <feature id="org.eclipse.equinox.p2.rcp.feature"/>
+      <feature id="org.eclipse.equinox.p2.user.ui"/>
+      <feature id="org.eclipse.equinox.p2.extras.feature"/>
+      <feature id="be.uantwerpen.ansymo.semanticadaptation.features.core" version="1.0.0.qualifier"/>
+      <feature id="org.eclipse.ecf.filetransfer.httpclient4.feature"/>
+      <feature id="org.eclipse.ecf.filetransfer.httpclient4.ssl.feature"/>
+      <feature id="org.eclipse.ecf.core.feature"/>
+      <feature id="org.eclipse.ecf.filetransfer.feature"/>
+      <feature id="org.eclipse.ecf.core.ssl.feature"/>
+      <feature id="org.eclipse.ecf.filetransfer.ssl.feature"/>
+   </features>
+
+   <configurations>
+      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="4" />
+      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.ds" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.p2.reconciler.dropins" autoStart="true" startLevel="4" />
+      <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
+      <plugin id="org.eclipse.update.configurator" autoStart="true" startLevel="4" />
+      <property name="DELETE.FOR.RELEASE.osgi.instance.area.default" value="@user.home/Documents/Overture/workspace" />
+      <property name="org.eclipse.update.reconcile" value="false" />
+   </configurations>
+
+   <preferencesInfo>
+      <targetfile overwrite="false"/>
+   </preferencesInfo>
+
+   <cssInfo>
+   </cssInfo>
+
+</product>

+ 20 - 0
DSL_SemanticAdaptation/product/src/main/resources/p2/overture.p2.inf

@@ -0,0 +1,20 @@
+instructions.configure=\
+  addRepository(type:0,name:Overture,enabled:false,location:http${#58}//dl.bintray.com/overturetool/overturetool/);\
+  addRepository(type:1,name:Overture,enabled:false,location:http${#58}//dl.bintray.com/overturetool/overturetool/);\
+  addRepository(type:0,name:Overture Development,enabled:true,location:http${#58}//dl.bintray.com/overturetool/overturetool-development/);\
+  addRepository(type:1,name:Overture Development,enabled:true,location:http${#58}//dl.bintray.com/overturetool/overturetool-development/);\
+  addRepository(type:0,name:Overture VDM2C Development,enabled:true,location:http${#58}//overture.au.dk/vdm2c/master/repository/);\
+  addRepository(type:1,name:Overture VDM2C Development,enabled:true,location:http${#58}//overture.au.dk/vdm2c/master/repository/);\
+  addRepository(type:0,name:Overture Graphics Plugin,enabled:true,location:http${#58}//overture.au.dk/overture-graphics-plugin/master/repository/);\
+  addRepository(type:1,name:Overture Graphics Plugin,enabled:true,location:http${#58}//overture.au.dk/overture-graphics-plugin/master/repository/);\
+  addRepository(type:0,name:Neon,enabled:true,location:http${#58}//download.eclipse.org/releases/neon/);\
+  addRepository(type:1,name:Neon,enabled:true,location:http${#58}//download.eclipse.org/releases/neon/);\
+  addRepository(type:0,name:The Eclipse Project Updates,enabled:true,location:http${#58}//download.eclipse.org/eclipse/updates/4.6);\
+  addRepository(type:1,name:The Eclipse Project Updates,enabled:true,location:http${#58}//download.eclipse.org/eclipse/updates/4.6);\
+  addRepository(type:0,name:JODTool,enabled:true,location:http${#58}//aofa.csce.kyushu-u.ac.jp/JODTool/);\
+  addRepository(type:1,name:JODTool,enabled:true,location:http${#58}//aofa.csce.kyushu-u.ac.jp/JODTool/);
+instructions.configure.import=\
+  org.eclipse.equinox.p2.touchpoint.natives.chmod,\
+  org.eclipse.equinox.p2.touchpoint.natives.copy,\
+  org.eclipse.equinox.p2.touchpoint.natives.remove
+