diff --git a/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/.classpath b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/.classpath new file mode 100644 index 0000000000000000000000000000000000000000..b1dabee38291b97f08cc3a18bee4e65b1e550530 --- /dev/null +++ b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/.classpath @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<classpath> + <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/> + <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> + <classpathentry kind="src" path="src"/> + <classpathentry kind="output" path="bin"/> +</classpath> diff --git a/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/.project b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/.project new file mode 100644 index 0000000000000000000000000000000000000000..790f45c0fbdd973fba49f29c1779e85589c21c3d --- /dev/null +++ b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/.project @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<projectDescription> + <name>edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints</name> + <comment></comment> + <projects> + </projects> + <buildSpec> + <buildCommand> + <name>org.eclipse.jdt.core.javabuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.ManifestBuilder</name> + <arguments> + </arguments> + </buildCommand> + <buildCommand> + <name>org.eclipse.pde.SchemaBuilder</name> + <arguments> + </arguments> + </buildCommand> + </buildSpec> + <natures> + <nature>org.eclipse.pde.PluginNature</nature> + <nature>org.eclipse.jdt.core.javanature</nature> + </natures> +</projectDescription> diff --git a/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/.settings/org.eclipse.jdt.core.prefs b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 0000000000000000000000000000000000000000..11f6e462df7b697da0744bef232871f1aa1b0cb3 --- /dev/null +++ b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,7 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7 +org.eclipse.jdt.core.compiler.compliance=1.7 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.7 diff --git a/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/META-INF/MANIFEST.MF b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/META-INF/MANIFEST.MF new file mode 100644 index 0000000000000000000000000000000000000000..ec19b4ce7d5b0460a2e575634048a78dfd423048 --- /dev/null +++ b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/META-INF/MANIFEST.MF @@ -0,0 +1,14 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: Adaptpoints +Bundle-SymbolicName: edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints;singleton:=true +Bundle-Version: 1.0.0.qualifier +Bundle-Activator: edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints.Activator +Require-Bundle: org.eclipse.ui, + org.eclipse.core.runtime, + org.eclipse.xtext.ui.shared;bundle-version="2.3.1", + edu.kit.ipd.descartes.mm.adaptation.sta;bundle-version="1.0.0", + edu.kit.ipd.descartes.mm.adaptation.editor;bundle-version="1.0.0", + edu.kit.ipd.descartes.mm.adaptationpoints.editor;bundle-version="1.0.0" +Bundle-ActivationPolicy: lazy +Bundle-RequiredExecutionEnvironment: JavaSE-1.7 diff --git a/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/build.properties b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/build.properties new file mode 100644 index 0000000000000000000000000000000000000000..6f20375d6c7d98fbc80bb5da99be9866b1fe2f73 --- /dev/null +++ b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/build.properties @@ -0,0 +1,5 @@ +source.. = src/ +output.. = bin/ +bin.includes = META-INF/,\ + .,\ + plugin.xml diff --git a/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/plugin.xml b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/plugin.xml new file mode 100644 index 0000000000000000000000000000000000000000..53270f38931196bba53ceedbed2216589d15367e --- /dev/null +++ b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/plugin.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<?eclipse version="3.4"?> +<plugin> + <extension + point="org.eclipse.xtext.extension_resourceServiceProvider"> + <resourceServiceProvider + class="edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints.ExecutableExtensionFactory:org.eclipse.xtext.ui.resource.generic.EmfResourceUIServiceProvider" + uriExtension="adaptationPoint"> + </resourceServiceProvider> + </extension> +</plugin> diff --git a/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/Activator.java b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/Activator.java new file mode 100644 index 0000000000000000000000000000000000000000..c6f56e6a9d73e4147a4d9d16ae1e5ed5e55bf059 --- /dev/null +++ b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/Activator.java @@ -0,0 +1,81 @@ +package edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints; + +import org.apache.log4j.Logger; +import org.eclipse.ui.plugin.AbstractUIPlugin; +import org.eclipse.xtext.ui.shared.SharedStateModule; +import org.osgi.framework.BundleContext; + +import com.google.inject.Guice; +import com.google.inject.Injector; +import com.google.inject.util.Modules; + +/** + * The activator class controls the plug-in life cycle + */ +public class Activator extends AbstractUIPlugin { + + private static final Logger logger = Logger.getLogger(Activator.class); + + // The plug-in ID + public static final String PLUGIN_ID = "edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints"; //$NON-NLS-1$ + + // The shared instance + private static Activator plugin; + + private Injector injector; + + /** + * The constructor + */ + public Activator() { + } + + public Injector getInjector() { + return injector; + } + + private void initializeEcoreInjector() { + injector = Guice.createInjector( + Modules.override( + Modules.override( + new AdaptationRuntimeModule() + ).with(new AdaptationPointsUiModule(plugin)) + ).with(new SharedStateModule()) + ); + } + + /* + * (non-Javadoc) + * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext) + */ + public void start(BundleContext context) throws Exception { + super.start(context); + plugin = this; + try { + initializeEcoreInjector(); + } catch(Exception e) { + logger.error(e.getMessage(), e); + throw e; + } + } + + /* + * (non-Javadoc) + * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext) + */ + public void stop(BundleContext context) throws Exception { + plugin = null; + injector = null; + super.stop(context); + } + + /** + * Returns the shared instance + * + * @return the shared instance + */ + public static Activator getDefault() { + return plugin; + } + +} diff --git a/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/AdaptationPointsUiModule.java b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/AdaptationPointsUiModule.java new file mode 100644 index 0000000000000000000000000000000000000000..c64480bb089a795ae2865e58c866130fd6dbd26e --- /dev/null +++ b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/AdaptationPointsUiModule.java @@ -0,0 +1,12 @@ +package edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints; + +import org.eclipse.ui.plugin.AbstractUIPlugin; +import org.eclipse.xtext.ui.resource.generic.EmfUiModule; + +public class AdaptationPointsUiModule extends EmfUiModule { + + public AdaptationPointsUiModule(AbstractUIPlugin plugin) { + super(plugin); + } + +} \ No newline at end of file diff --git a/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/AdaptationQualifiedNameProvider.java b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/AdaptationQualifiedNameProvider.java new file mode 100644 index 0000000000000000000000000000000000000000..1d13cdb432f718672cedc9cd0bd06be5dd830234 --- /dev/null +++ b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/AdaptationQualifiedNameProvider.java @@ -0,0 +1,7 @@ +package edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints; + +import org.eclipse.xtext.naming.SimpleNameProvider; + +public class AdaptationQualifiedNameProvider extends SimpleNameProvider{ + +} \ No newline at end of file diff --git a/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/AdaptationResourceDescriptionStrategy.java b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/AdaptationResourceDescriptionStrategy.java new file mode 100644 index 0000000000000000000000000000000000000000..3e8d1e37af149d9208a9615a93c6e991c3b900c4 --- /dev/null +++ b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/AdaptationResourceDescriptionStrategy.java @@ -0,0 +1,7 @@ +package edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints; + +import org.eclipse.xtext.resource.impl.DefaultResourceDescriptionStrategy; + +public class AdaptationResourceDescriptionStrategy extends DefaultResourceDescriptionStrategy { + +} diff --git a/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/AdaptationRuntimeModule.java b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/AdaptationRuntimeModule.java new file mode 100644 index 0000000000000000000000000000000000000000..9f58e9f06a23a7a4ac20c2ad8877c95fd9a47336 --- /dev/null +++ b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/AdaptationRuntimeModule.java @@ -0,0 +1,28 @@ +package edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints; + +import org.eclipse.xtext.naming.IQualifiedNameProvider; +import org.eclipse.xtext.resource.IDefaultResourceDescriptionStrategy; +import org.eclipse.xtext.resource.generic.AbstractGenericResourceRuntimeModule; + +public class AdaptationRuntimeModule extends AbstractGenericResourceRuntimeModule { + + @Override + protected String getLanguageName() { + return "edu.kit.ipd.descartes.mm.adaptation.RepositoryID"; + } + + @Override + protected String getFileExtensions() { + return "stalang"; + } + + public Class<? extends IDefaultResourceDescriptionStrategy> bindIDefaultResourceDescriptionStrategy() { + return AdaptationResourceDescriptionStrategy.class; + } + + @Override + public Class<? extends IQualifiedNameProvider> bindIQualifiedNameProvider() { + return AdaptationQualifiedNameProvider.class; + } + +} diff --git a/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/ExecutableExtensionFactory.java b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/ExecutableExtensionFactory.java new file mode 100644 index 0000000000000000000000000000000000000000..220ca65f80aa91f98c01c42111189fbd36285ab6 --- /dev/null +++ b/edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints/src/edu/kit/ipd/descartes/mm/adaptation/ui/adaptpoints/ExecutableExtensionFactory.java @@ -0,0 +1,20 @@ +package edu.kit.ipd.descartes.mm.adaptation.ui.adaptpoints; + +import org.eclipse.xtext.ui.guice.AbstractGuiceAwareExecutableExtensionFactory; +import org.osgi.framework.Bundle; + +import com.google.inject.Injector; + +public class ExecutableExtensionFactory extends AbstractGuiceAwareExecutableExtensionFactory{ + + @Override + protected Bundle getBundle() { + return Activator.getDefault().getBundle(); + } + + @Override + protected Injector getInjector() { + return Activator.getDefault().getInjector(); + } + +}