Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStéphane Bégaudeau2015-11-26 10:03:21 +0000
committerMelanie Bats2015-11-27 15:34:37 +0000
commit90b2f509bdb2e2a792fec65621767ff77ebff303 (patch)
treed533be41f293a1e8b068ed39d121c829836e5927 /plugins
parentcdb727229b490b4d5df386c5c5ab5dd2fb145f18 (diff)
downloadorg.eclipse.eef-90b2f509bdb2e2a792fec65621767ff77ebff303.tar.gz
org.eclipse.eef-90b2f509bdb2e2a792fec65621767ff77ebff303.tar.xz
org.eclipse.eef-90b2f509bdb2e2a792fec65621767ff77ebff303.zip
Improve the lifecycle and dependencies
1) Remove all concepts that should not be released for M4 2) Separate various steps of the lifecycle using different classes 3) Remove the interpreter and AQL interpreter plugins to use the Sirius plugins Change-Id: Ie15e64a25c6a6a111fdbb90b97a93251fda71b6f Signed-off-by: Stéphane Bégaudeau <stephane.begaudeau@obeo.fr>
Diffstat (limited to 'plugins')
-rw-r--r--plugins/org.eclipse.eef.core/META-INF/MANIFEST.MF6
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFChildObject.java25
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFContainer.java36
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFContainerParent.java2
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFExpressionUtils.java58
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFGroup.java29
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFObject.java31
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFPage.java17
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFText.java65
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFView.java17
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFViewFactory.java10
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFWidget.java20
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/IEPackageManager.java29
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/IVariableManager.java7
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/controllers/EEFControllersFactory.java42
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/controllers/EEFTextController.java60
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/controllers/IConsumer.java (renamed from plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/IConsumer.java)2
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/AbstractEEFChildObject.java36
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/AbstractEEFObject.java65
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/AbstractEEFWidgetImpl.java35
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFCompoundInterpreter.java6
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFContainerImpl.java139
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFGroupImpl.java64
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFPageImpl.java79
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFTextImpl.java191
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFVariableManager.java21
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFViewImpl.java141
-rw-r--r--plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/controllers/EEFTextControllerImpl.java176
-rw-r--r--plugins/org.eclipse.eef.ide.ui/META-INF/MANIFEST.MF6
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/TabDescriptorFilter.java16
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/data/EEFSection.java245
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/properties/EEFSection.java127
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/properties/EEFSectionDescriptor.java (renamed from plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/data/EEFSectionDescriptor.java)2
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/properties/EEFTabDescriptor.java (renamed from plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/data/EEFTabDescriptor.java)2
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFContainerLifecycleManager.java151
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFTextLifecycleManager.java233
-rw-r--r--plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/ILifecycleManager.java52
-rw-r--r--plugins/org.eclipse.eef.ide/META-INF/MANIFEST.MF2
-rw-r--r--plugins/org.eclipse.eef.ide/src/org/eclipse/eef/ide/internal/EEFIdePlugin.java2
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/.checkstyle10
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/.classpath7
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/.project34
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.jdt.core.prefs398
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.jdt.launching.prefs2
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.jdt.ui.prefs67
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.pde.core.prefs2
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.pde.prefs32
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/META-INF/MANIFEST.MF17
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/about.html28
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/build.properties15
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/plugin.properties13
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/plugin.xml14
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/pom.xml37
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLEvaluationResult.java66
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLInterpreter.java108
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLInterpreterPlugin.java107
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLInterpreterProvider.java43
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/DefaultEEFServices.java50
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/I18N.java144
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/IAQLConstants.java23
-rw-r--r--plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/Messages.java45
-rw-r--r--plugins/org.eclipse.eef.interpreter/.checkstyle10
-rw-r--r--plugins/org.eclipse.eef.interpreter/.classpath7
-rw-r--r--plugins/org.eclipse.eef.interpreter/.project34
-rw-r--r--plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.jdt.core.prefs398
-rw-r--r--plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.jdt.launching.prefs2
-rw-r--r--plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.jdt.ui.prefs67
-rw-r--r--plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.pde.core.prefs2
-rw-r--r--plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.pde.prefs32
-rw-r--r--plugins/org.eclipse.eef.interpreter/META-INF/MANIFEST.MF10
-rw-r--r--plugins/org.eclipse.eef.interpreter/about.html28
-rw-r--r--plugins/org.eclipse.eef.interpreter/build.properties13
-rw-r--r--plugins/org.eclipse.eef.interpreter/plugin.properties9
-rw-r--r--plugins/org.eclipse.eef.interpreter/pom.xml37
-rw-r--r--plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IEvaluationResult.java34
-rw-r--r--plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IInterpreter.java33
-rw-r--r--plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IInterpreterProvider.java35
-rw-r--r--plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IValidationResult.java27
78 files changed, 1107 insertions, 3180 deletions
diff --git a/plugins/org.eclipse.eef.core/META-INF/MANIFEST.MF b/plugins/org.eclipse.eef.core/META-INF/MANIFEST.MF
index 02542b7eb..7054287fa 100644
--- a/plugins/org.eclipse.eef.core/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.eef.core/META-INF/MANIFEST.MF
@@ -10,7 +10,9 @@ Require-Bundle: org.eclipse.emf.ecore;bundle-version="[2.8.0,3.0.0)",
Import-Package: com.google.common.base;version="[15.0.0,16.0.0)",
com.google.common.collect;version="[15.0.0,16.0.0)",
org.eclipse.eef;version="[2.0.0,3.0.0)",
- org.eclipse.eef.interpreter.api;version="[2.0.0,3.0.0)"
+ org.eclipse.sirius.common.interpreter.api;version="[1.0.0,2.0.0)"
Export-Package: org.eclipse.eef.core.api;version="2.0.0",
- org.eclipse.eef.core.internal;version="2.0.0";x-internal:=true
+ org.eclipse.eef.core.api.controllers;version="2.0.0",
+ org.eclipse.eef.core.internal;version="2.0.0";x-internal:=true,
+ org.eclipse.eef.core.internal.controllers;version="2.0.0"
Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFChildObject.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFChildObject.java
deleted file mode 100644
index 770a422e6..000000000
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFChildObject.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.core.api;
-
-/**
- * This interface is used to represent objects that have a parent.
- *
- * @author sbegaudeau
- */
-public interface EEFChildObject extends EEFObject {
- /**
- * Returns the parent of the {@link EEFObject}.
- *
- * @return The parent of the {@link EEFObject}
- */
- EEFObject getParent();
-}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFContainer.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFContainer.java
deleted file mode 100644
index 1a7d28385..000000000
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFContainer.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.core.api;
-
-import java.util.List;
-
-import org.eclipse.eef.EEFContainerDescription;
-
-/**
- * The EContainer is used to hold a group of {@link EEFWidget}.
- *
- * @author sbegaudeau
- */
-public interface EEFContainer extends EEFContainerParent {
- /**
- * Returns the description of the {@link EEFContainer}.
- *
- * @return The {@link EEFContainerDescription}
- */
- EEFContainerDescription getDescription();
-
- /**
- * Returns the list of {@link EEFWidget}.
- *
- * @return The list of {@link EEFWidget}
- */
- List<EEFWidget> getWidgets();
-}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFContainerParent.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFContainerParent.java
index 7e88a47e9..4f2ee56b4 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFContainerParent.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFContainerParent.java
@@ -15,6 +15,6 @@ package org.eclipse.eef.core.api;
*
* @author sbegaudeau
*/
-public interface EEFContainerParent extends EEFChildObject {
+public interface EEFContainerParent {
// nothing
}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFExpressionUtils.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFExpressionUtils.java
index 9b85cc494..466c42595 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFExpressionUtils.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFExpressionUtils.java
@@ -15,64 +15,18 @@ package org.eclipse.eef.core.api;
*
* @author sbegaudeau
*/
-public class EEFExpressionUtils {
+public final class EEFExpressionUtils {
/**
- * Utility class containing the constants related to the {@link org.eclipse.eef.core.api.EEFView}.
- *
- * @author sbegaudeau
- */
- public final class EEFView {
- /**
- * The name of the variable viewSemanticCandidate.
- */
- public static final String VIEW_SEMANTIC_CANDIDATE = "viewSemanticCandidate"; //$NON-NLS-1$
-
- /**
- * The constructor.
- */
- private EEFView() {
- // prevent instantiation
- }
- }
-
- /**
- * Utility class containing the constants related to the {@link org.eclipse.eef.core.api.EEFPage}.
- *
- * @author sbegaudeau
+ * The self variable.
*/
- public final class EEFPage {
-
- /**
- * The name of the variable pageSemanticCandidate.
- */
- public static final String PAGE_SEMANTIC_CANDIDATE = "pageSemanticCandidate"; //$NON-NLS-1$
-
- /**
- * The constructor.
- */
- private EEFPage() {
- // prevent instantiation
- }
- }
+ public static final String SELF = "self"; //$NON-NLS-1$
/**
- * Utility class containing the constants related to the {@link org.eclipse.eef.core.api.EEFGroup}.
- *
- * @author sbegaudeau
+ * The constructor.
*/
- public final class EEFGroup {
- /**
- * The name of the variable groupSemanticCandidate.
- */
- public static final String GROUP_SEMANTIC_CANDIDATE = "groupSemanticCandidate"; //$NON-NLS-1$
-
- /**
- * The constructor.
- */
- private EEFGroup() {
- // prevent instantiation
- }
+ private EEFExpressionUtils() {
+ // prevent instantiation
}
/**
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFGroup.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFGroup.java
index 6c5703a33..803995fc7 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFGroup.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFGroup.java
@@ -11,6 +11,8 @@
package org.eclipse.eef.core.api;
import org.eclipse.eef.EEFGroupDescription;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.sirius.common.interpreter.api.IInterpreter;
/**
* The {@link EEFGroup} is used as the main structure within a page.
@@ -26,9 +28,30 @@ public interface EEFGroup extends EEFContainerParent {
EEFGroupDescription getDescription();
/**
- * Returns the {@link EEFContainer} used to layout this {@link EEFGroup}.
+ * Returns the page containing the group.
*
- * @return The {@link EEFContainer}
+ * @return The page containing the group
*/
- EEFContainer getContainer();
+ EEFPage getPage();
+
+ /**
+ * Returns the variable manager.
+ *
+ * @return The variable manager
+ */
+ IVariableManager getVariableManager();
+
+ /**
+ * Returns the interpreter.
+ *
+ * @return The interpreter
+ */
+ IInterpreter getInterpreter();
+
+ /**
+ * Returns the editing domain.
+ *
+ * @return The editing domain
+ */
+ TransactionalEditingDomain getEditingDomain();
}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFObject.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFObject.java
deleted file mode 100644
index 121e8cddd..000000000
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFObject.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.core.api;
-
-/**
- * Superinterface of all the business objects.
- *
- * @author sbegaudeau
- */
-public interface EEFObject {
- /**
- * Creates the tree of objects representing the user interface.
- */
- void createControl();
-
- /**
- * Set or update the input and reevaluates all the input-related expressions.
- *
- * @param object
- * The new input
- */
- void setInput(Object object);
-}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFPage.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFPage.java
index 45d7c2b56..416629a3d 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFPage.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFPage.java
@@ -19,7 +19,7 @@ import org.eclipse.eef.EEFPageDescription;
*
* @author sbegaudeau
*/
-public interface EEFPage extends EEFChildObject {
+public interface EEFPage {
/**
* Returns the description of the {@link EEFPage}.
*
@@ -40,4 +40,19 @@ public interface EEFPage extends EEFChildObject {
* @return The {@link EEFGroup}
*/
List<EEFGroup> getGroups();
+
+ /**
+ * Returns the view containing the page.
+ *
+ * @return The view containing the page
+ */
+ EEFView getView();
+
+ /**
+ * Returns the variable manager.
+ *
+ * @return The variable manager
+ */
+ IVariableManager getVariableManager();
+
}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFText.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFText.java
deleted file mode 100644
index 7b5f95ec5..000000000
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFText.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.core.api;
-
-import org.eclipse.eef.EEFTextDescription;
-
-/**
- * The {@link EEFText} is used to manage the state of a Text widget.
- *
- * @author sbegaudeau
- */
-public interface EEFText extends EEFWidget {
- /**
- * Returns the description of the {@link EEFText}.
- *
- * @return The {@link EEFTextDescription}
- */
- EEFTextDescription getDescription();
-
- /**
- * Adds a consumer which will be triggered when the value expression is evaluated.
- *
- * @param consumer
- * A functional interface used as a callback
- */
- void addValueExpressionConsumer(IConsumer<String> consumer);
-
- /**
- * Removes the value expression consumer.
- */
- void removeValueExpressionConsumer();
-
- /**
- * Updates the value of the text.
- *
- * @param selection
- * The selection
- *
- * @param newValue
- * The new value
- */
- void updateValue(Object selection, String newValue);
-
- /**
- * Adds a consumer which will be triggered when the label expression is evaluated.
- *
- * @param consumer
- * A functional interface used as a callback
- */
- void addLabelExpressionConsumer(IConsumer<String> consumer);
-
- /**
- * Removes the label expression consumer.
- */
- void removeLabelExpressionConsumer();
-
-}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFView.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFView.java
index ac705b537..df2e51c4b 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFView.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFView.java
@@ -13,13 +13,28 @@ package org.eclipse.eef.core.api;
import java.util.List;
import org.eclipse.eef.EEFViewDescription;
+import org.eclipse.emf.ecore.EObject;
/**
* The view if the root concept of the EEF model.
*
* @author sbegaudeau
*/
-public interface EEFView extends EEFObject {
+public interface EEFView {
+
+ /**
+ * Initializes the view by creating the pages and groups used to compute the tab and section descriptors.
+ */
+ void initialize();
+
+ /**
+ * Sets the input of the view.
+ *
+ * @param eObject
+ * The input
+ */
+ void setInput(EObject eObject);
+
/**
* Returns the description of the {@link EEFView}.
*
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFViewFactory.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFViewFactory.java
index ce9614d46..67a771c82 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFViewFactory.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFViewFactory.java
@@ -15,8 +15,9 @@ import java.util.List;
import org.eclipse.eef.EEFViewDescription;
import org.eclipse.eef.core.internal.EEFCompoundInterpreter;
import org.eclipse.eef.core.internal.EEFViewImpl;
-import org.eclipse.eef.interpreter.api.IInterpreterProvider;
+import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.sirius.common.interpreter.api.IInterpreterProvider;
/**
* The factory used to create the {@link EEFView}.
@@ -35,12 +36,15 @@ public class EEFViewFactory {
* The {@link IInterpreterProvider} available
* @param editingDomain
* The editing domain
+ * @param eObject
+ * The input
* @return The {@link EEFView} fully initialized
*/
public EEFView createEEFView(EEFViewDescription eefViewDescription, IVariableManager variableManager,
- List<IInterpreterProvider> interpreterProviders, TransactionalEditingDomain editingDomain) {
+ List<IInterpreterProvider> interpreterProviders, TransactionalEditingDomain editingDomain, EObject eObject) {
EEFView eefView = new EEFViewImpl(eefViewDescription, variableManager, new EEFCompoundInterpreter(interpreterProviders), editingDomain);
- eefView.createControl();
+ eefView.setInput(eObject);
+ eefView.initialize();
return eefView;
}
}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFWidget.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFWidget.java
deleted file mode 100644
index 85af8cee0..000000000
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/EEFWidget.java
+++ /dev/null
@@ -1,20 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.core.api;
-
-/**
- * Common superclass of all the classes used to manage widgets.
- *
- * @author sbegaudeau
- */
-public interface EEFWidget extends EEFChildObject {
- // do nothing
-}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/IEPackageManager.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/IEPackageManager.java
deleted file mode 100644
index 1c8e29dab..000000000
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/IEPackageManager.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.core.api;
-
-import java.util.List;
-
-import org.eclipse.emf.ecore.EPackage;
-
-/**
- * Utility class used to manage all the {@link EPackage} known by the application.
- *
- * @author sbegaudeau
- */
-public interface IEPackageManager {
- /**
- * Returns the {@link EPackage}.
- *
- * @return the {@link EPackage}
- */
- List<EPackage> getEPackages();
-}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/IVariableManager.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/IVariableManager.java
index 4911f2aa6..4afe40a45 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/IVariableManager.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/IVariableManager.java
@@ -38,9 +38,14 @@ public interface IVariableManager {
/**
* Creates a child {@link IVariableManager}.
- *
+ *
* @return A child {@link IVariableManager}
*/
IVariableManager createChild();
+ /**
+ * Clear the variable manager and its children.
+ */
+ void clear();
+
}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/controllers/EEFControllersFactory.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/controllers/EEFControllersFactory.java
new file mode 100644
index 000000000..f0453850d
--- /dev/null
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/controllers/EEFControllersFactory.java
@@ -0,0 +1,42 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Obeo - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.eef.core.api.controllers;
+
+import org.eclipse.eef.EEFTextDescription;
+import org.eclipse.eef.core.api.IVariableManager;
+import org.eclipse.eef.core.internal.controllers.EEFTextControllerImpl;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.sirius.common.interpreter.api.IInterpreter;
+
+/**
+ * This factory will be used to create the controllers.
+ *
+ * @author sbegaudeau
+ */
+public class EEFControllersFactory {
+ /**
+ * Creates a new text controller.
+ *
+ * @param description
+ * The description
+ * @param variableManager
+ * The variable manager
+ * @param interpreter
+ * The interpreter
+ * @param editingDomain
+ * The editing domain
+ * @return A text controller
+ */
+ public EEFTextController createTextController(EEFTextDescription description, IVariableManager variableManager, IInterpreter interpreter,
+ TransactionalEditingDomain editingDomain) {
+ return new EEFTextControllerImpl(description, variableManager, interpreter, editingDomain);
+ }
+}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/controllers/EEFTextController.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/controllers/EEFTextController.java
new file mode 100644
index 000000000..ff89909a0
--- /dev/null
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/controllers/EEFTextController.java
@@ -0,0 +1,60 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Obeo - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.eef.core.api.controllers;
+
+/**
+ * The EEFTextController is responsible of supporting all the interactions with the widgets created for an
+ * EEFTextDescription.
+ *
+ * @author sbegaudeau
+ */
+public interface EEFTextController {
+
+ /**
+ * Update the value of the text.
+ *
+ * @param text
+ * The new value of the text
+ */
+ void updateValue(String text);
+
+ /**
+ * Register a consumer which will be called with the new value of the text when it will change.
+ *
+ * @param consumer
+ * The consumer of the new value of the text
+ */
+ void onNewValue(IConsumer<String> consumer);
+
+ /**
+ * Register a consumer which will be called with the new value of the label when it will change.
+ *
+ * @param consumer
+ * The consumer of the new value of the label
+ */
+ void onNewLabel(IConsumer<String> consumer);
+
+ /**
+ * Remove the consumer of the new value of the text.
+ */
+ void removeNewValueConsumer();
+
+ /**
+ * Remove the consumer of the new value of the label.
+ */
+ void removeNewLabelConsumer();
+
+ /**
+ * Refresh the label and the text.
+ */
+ void refresh();
+
+}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/IConsumer.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/controllers/IConsumer.java
index db928f9d8..bda83b59b 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/IConsumer.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/api/controllers/IConsumer.java
@@ -8,7 +8,7 @@
* Contributors:
* Obeo - initial API and implementation
*******************************************************************************/
-package org.eclipse.eef.core.api;
+package org.eclipse.eef.core.api.controllers;
/**
* The consumer is a functional type used to receive an Object of a specific type.
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/AbstractEEFChildObject.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/AbstractEEFChildObject.java
deleted file mode 100644
index 58746f081..000000000
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/AbstractEEFChildObject.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.core.internal;
-
-import org.eclipse.eef.core.api.EEFChildObject;
-import org.eclipse.eef.core.api.IVariableManager;
-import org.eclipse.eef.interpreter.api.IInterpreter;
-
-/**
- * Common superclass of all the child object.
- *
- * @author sbegaudeau
- */
-public abstract class AbstractEEFChildObject extends AbstractEEFObject implements EEFChildObject {
-
- /**
- * The constructor.
- *
- * @param variableManager
- * The variable manager
- * @param interpreter
- * The interpreter
- */
- public AbstractEEFChildObject(IVariableManager variableManager, IInterpreter interpreter) {
- super(variableManager, interpreter);
- }
-
-}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/AbstractEEFObject.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/AbstractEEFObject.java
deleted file mode 100644
index 99a6d5f10..000000000
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/AbstractEEFObject.java
+++ /dev/null
@@ -1,65 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.core.internal;
-
-import org.eclipse.eef.core.api.EEFObject;
-import org.eclipse.eef.core.api.IVariableManager;
-import org.eclipse.eef.interpreter.api.IInterpreter;
-
-/**
- * The basic implementation of the {@link EEFObject}.
- *
- * @author sbegaudeau
- */
-public abstract class AbstractEEFObject implements EEFObject {
-
- /**
- * The variable manager.
- */
- private IVariableManager variableManager;
-
- /**
- * The interpreter.
- */
- private IInterpreter interpreter;
-
- /**
- * The constructor.
- *
- * @param variableManager
- * The variable manager
- * @param interpreter
- * The interpreter
- */
- public AbstractEEFObject(IVariableManager variableManager, IInterpreter interpreter) {
- this.variableManager = variableManager;
- this.interpreter = interpreter;
- }
-
- /**
- * Return the variableManager.
- *
- * @return the variableManager
- */
- protected IVariableManager getVariableManager() {
- return this.variableManager;
- }
-
- /**
- * Return the interpreter.
- *
- * @return the interpreter
- */
- protected IInterpreter getInterpreter() {
- return this.interpreter;
- }
-
-}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/AbstractEEFWidgetImpl.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/AbstractEEFWidgetImpl.java
deleted file mode 100644
index 23c84b6ea..000000000
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/AbstractEEFWidgetImpl.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.core.internal;
-
-import org.eclipse.eef.core.api.EEFWidget;
-import org.eclipse.eef.core.api.IVariableManager;
-import org.eclipse.eef.interpreter.api.IInterpreter;
-
-/**
- * The implementation of the {@link EEFWidget}.
- *
- * @author sbegaudeau
- */
-public abstract class AbstractEEFWidgetImpl extends AbstractEEFChildObject implements EEFWidget {
-
- /**
- * The constructor.
- *
- * @param variableManager
- * The variable manager
- * @param interpreter
- * The interpreter
- */
- public AbstractEEFWidgetImpl(IVariableManager variableManager, IInterpreter interpreter) {
- super(variableManager, interpreter);
- }
-}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFCompoundInterpreter.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFCompoundInterpreter.java
index ff74dbbc4..d09fa69d9 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFCompoundInterpreter.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFCompoundInterpreter.java
@@ -17,10 +17,10 @@ import com.google.common.collect.Iterables;
import java.util.List;
import java.util.Map;
-import org.eclipse.eef.interpreter.api.IEvaluationResult;
-import org.eclipse.eef.interpreter.api.IInterpreter;
-import org.eclipse.eef.interpreter.api.IInterpreterProvider;
import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.sirius.common.interpreter.api.IEvaluationResult;
+import org.eclipse.sirius.common.interpreter.api.IInterpreter;
+import org.eclipse.sirius.common.interpreter.api.IInterpreterProvider;
/**
* Utility class encapsulating all the available interpreters.
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFContainerImpl.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFContainerImpl.java
deleted file mode 100644
index ce62333d3..000000000
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFContainerImpl.java
+++ /dev/null
@@ -1,139 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.core.internal;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.eef.EEFContainerDescription;
-import org.eclipse.eef.EEFTextDescription;
-import org.eclipse.eef.EEFWidgetDescription;
-import org.eclipse.eef.core.api.EEFContainer;
-import org.eclipse.eef.core.api.EEFContainerParent;
-import org.eclipse.eef.core.api.EEFWidget;
-import org.eclipse.eef.core.api.IVariableManager;
-import org.eclipse.eef.interpreter.api.IInterpreter;
-import org.eclipse.emf.transaction.TransactionalEditingDomain;
-
-/**
- * Implementation of the {@link EEFContainer}.
- *
- * @author sbegaudeau
- */
-public class EEFContainerImpl extends AbstractEEFChildObject implements EEFContainer {
-
- /**
- * The parent of the {@link EEFContainer}.
- */
- private EEFContainerParent eefContainerParent;
-
- /**
- * The description.
- */
- private EEFContainerDescription eefContainerDescription;
-
- /**
- * The widgets.
- */
- private List<EEFWidget> eWidgets = new ArrayList<EEFWidget>();
-
- /**
- * The editing domain.
- */
- private TransactionalEditingDomain editingDomain;
-
- /**
- * The constructor.
- *
- * @param eefContainerParent
- * The parent of the container
- * @param eefContainerDescription
- * The description
- * @param variableManager
- * The variable manager
- * @param interpreter
- * The interpreter
- * @param editingDomain
- * The editing domain
- */
- public EEFContainerImpl(EEFContainerParent eefContainerParent, EEFContainerDescription eefContainerDescription, IVariableManager variableManager,
- IInterpreter interpreter, TransactionalEditingDomain editingDomain) {
- super(variableManager, interpreter);
- this.eefContainerDescription = eefContainerDescription;
- this.eefContainerParent = eefContainerParent;
- this.editingDomain = editingDomain;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFObject#createControl()
- */
- @Override
- public void createControl() {
- List<EEFWidgetDescription> eefWidgetDescriptions = this.eefContainerDescription.getWidgets();
- for (EEFWidgetDescription eefWidgetDescription : eefWidgetDescriptions) {
- if (eefWidgetDescription instanceof EEFTextDescription) {
- EEFTextDescription eefTextDescription = (EEFTextDescription) eefWidgetDescription;
- IVariableManager childVariableManager = this.getVariableManager().createChild();
- EEFTextImpl eefTextImpl = new EEFTextImpl(this, eefTextDescription, childVariableManager, this.getInterpreter(), this.editingDomain);
- eefTextImpl.createControl();
- this.eWidgets.add(eefTextImpl);
- }
- }
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFObject#setInput(java.lang.Object)
- */
- @Override
- public void setInput(Object object) {
- for (EEFWidget eefWidget : this.eWidgets) {
- if (eefWidget instanceof AbstractEEFWidgetImpl) {
- AbstractEEFWidgetImpl eefWidgetImpl = (AbstractEEFWidgetImpl) eefWidget;
- eefWidgetImpl.setInput(null);
- }
- }
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFContainer#getDescription()
- */
- @Override
- public EEFContainerDescription getDescription() {
- return this.eefContainerDescription;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFContainer#getWidgets()
- */
- @Override
- public List<EEFWidget> getWidgets() {
- return this.eWidgets;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFChildObject#getParent()
- */
- @Override
- public EEFContainerParent getParent() {
- return this.eefContainerParent;
- }
-
-}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFGroupImpl.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFGroupImpl.java
index c34fbc4de..775674413 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFGroupImpl.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFGroupImpl.java
@@ -11,20 +11,28 @@
package org.eclipse.eef.core.internal;
import org.eclipse.eef.EEFGroupDescription;
-import org.eclipse.eef.core.api.EEFContainer;
-import org.eclipse.eef.core.api.EEFExpressionUtils;
import org.eclipse.eef.core.api.EEFGroup;
import org.eclipse.eef.core.api.EEFPage;
import org.eclipse.eef.core.api.IVariableManager;
-import org.eclipse.eef.interpreter.api.IInterpreter;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.sirius.common.interpreter.api.IInterpreter;
/**
* The implementation of the {@link EEFGroup}.
*
* @author sbegaudeau
*/
-public class EEFGroupImpl extends AbstractEEFChildObject implements EEFGroup {
+public class EEFGroupImpl implements EEFGroup {
+ /**
+ * The variable manager.
+ */
+ private IVariableManager variableManager;
+
+ /**
+ * The interpreter.
+ */
+ private IInterpreter interpreter;
+
/**
* The description.
*/
@@ -36,11 +44,6 @@ public class EEFGroupImpl extends AbstractEEFChildObject implements EEFGroup {
private EEFPage eefPage;
/**
- * The {@link EEFContainer}.
- */
- private EEFContainer eefContainer;
-
- /**
* The editing domain.
*/
private TransactionalEditingDomain editingDomain;
@@ -61,7 +64,8 @@ public class EEFGroupImpl extends AbstractEEFChildObject implements EEFGroup {
*/
public EEFGroupImpl(EEFPage eefPage, EEFGroupDescription eefGroupDescription, IVariableManager variableManager, IInterpreter interpreter,
TransactionalEditingDomain editingDomain) {
- super(variableManager, interpreter);
+ this.variableManager = variableManager;
+ this.interpreter = interpreter;
this.eefPage = eefPage;
this.eefGroupDescription = eefGroupDescription;
this.editingDomain = editingDomain;
@@ -70,57 +74,45 @@ public class EEFGroupImpl extends AbstractEEFChildObject implements EEFGroup {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.core.api.EEFObject#createControl()
+ * @see org.eclipse.eef.core.api.EEFGroup#getDescription()
*/
@Override
- public void createControl() {
- EEFContainerImpl eefContainerImpl = new EEFContainerImpl(this, this.eefGroupDescription.getContainer(), this.getVariableManager(),
- this.getInterpreter(), this.editingDomain);
- eefContainerImpl.createControl();
- this.eefContainer = eefContainerImpl;
+ public EEFGroupDescription getDescription() {
+ return this.eefGroupDescription;
}
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFObject#setInput(java.lang.Object)
- */
@Override
- public void setInput(Object object) {
- this.getVariableManager().put(EEFExpressionUtils.EEFGroup.GROUP_SEMANTIC_CANDIDATE, object);
- if (this.eefContainer instanceof EEFContainerImpl) {
- EEFContainerImpl eefContainerImpl = (EEFContainerImpl) this.eefContainer;
- eefContainerImpl.setInput(null);
- }
+ public EEFPage getPage() {
+ return this.eefPage;
}
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.core.api.EEFGroup#getContainer()
+ * @see org.eclipse.eef.core.api.EEFGroup#getVariableManager()
*/
@Override
- public EEFContainer getContainer() {
- return this.eefContainer;
+ public IVariableManager getVariableManager() {
+ return this.variableManager;
}
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.core.api.EEFGroup#getDescription()
+ * @see org.eclipse.eef.core.api.EEFGroup#getInterpreter()
*/
@Override
- public EEFGroupDescription getDescription() {
- return this.eefGroupDescription;
+ public IInterpreter getInterpreter() {
+ return this.interpreter;
}
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.core.api.EEFChildObject#getParent()
+ * @see org.eclipse.eef.core.api.EEFGroup#getEditingDomain()
*/
@Override
- public EEFPage getParent() {
- return this.eefPage;
+ public TransactionalEditingDomain getEditingDomain() {
+ return this.editingDomain;
}
}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFPageImpl.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFPageImpl.java
index 980474007..efa8e0a8f 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFPageImpl.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFPageImpl.java
@@ -20,16 +20,25 @@ import org.eclipse.eef.core.api.EEFGroup;
import org.eclipse.eef.core.api.EEFPage;
import org.eclipse.eef.core.api.EEFView;
import org.eclipse.eef.core.api.IVariableManager;
-import org.eclipse.eef.interpreter.api.IEvaluationResult;
-import org.eclipse.eef.interpreter.api.IInterpreter;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.sirius.common.interpreter.api.IEvaluationResult;
+import org.eclipse.sirius.common.interpreter.api.IInterpreter;
/**
* The implementation of the {@link EEFPage}.
*
* @author sbegaudeau
*/
-public class EEFPageImpl extends AbstractEEFChildObject implements EEFPage {
+public class EEFPageImpl implements EEFPage {
+ /**
+ * The variable manager.
+ */
+ private IVariableManager variableManager;
+
+ /**
+ * The interpreter.
+ */
+ private IInterpreter interpreter;
/**
* The containing {@link EEFView}.
@@ -67,50 +76,44 @@ public class EEFPageImpl extends AbstractEEFChildObject implements EEFPage {
*/
public EEFPageImpl(EEFView eefView, EEFPageDescription eefPageDescription, IVariableManager variableManager, IInterpreter interpreter,
TransactionalEditingDomain editingDomain) {
- super(variableManager, interpreter);
+ this.variableManager = variableManager;
+ this.interpreter = interpreter;
this.eefView = eefView;
this.eefPageDescription = eefPageDescription;
this.editingDomain = editingDomain;
}
/**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFObject#createControl()
+ * Initialize the variables of the EEFPage.
*/
- @Override
- public void createControl() {
+ public void initialize() {
List<EEFGroupDescription> eefGroupDescriptions = this.eefPageDescription.getGroups();
for (EEFGroupDescription eefGroupDescription : eefGroupDescriptions) {
String semanticCandidatesExpression = eefGroupDescription.getSemanticCandidateExpression();
if (semanticCandidatesExpression != null && semanticCandidatesExpression.trim().length() > 0) {
- IEvaluationResult evaluationResult = this.getInterpreter().evaluateExpression(this.getVariableManager().getVariables(),
+ IEvaluationResult evaluationResult = this.interpreter.evaluateExpression(this.getVariableManager().getVariables(),
semanticCandidatesExpression);
if (evaluationResult.getValue() instanceof Iterable<?>) {
@SuppressWarnings("unchecked")
Iterable<Object> groupSemanticCandidates = (Iterable<Object>) evaluationResult.getValue();
for (Object groupSemanticCandidate : groupSemanticCandidates) {
IVariableManager childVariableManager = this.getVariableManager().createChild();
- childVariableManager.put(EEFExpressionUtils.EEFGroup.GROUP_SEMANTIC_CANDIDATE, groupSemanticCandidate);
- EEFGroupImpl eefGroupImpl = new EEFGroupImpl(this, eefGroupDescription, childVariableManager, this.getInterpreter(),
+ childVariableManager.put(EEFExpressionUtils.SELF, groupSemanticCandidate);
+ EEFGroupImpl eefGroupImpl = new EEFGroupImpl(this, eefGroupDescription, childVariableManager, this.interpreter,
this.editingDomain);
- eefGroupImpl.createControl();
eefGroups.add(eefGroupImpl);
}
} else {
Object groupSemanticCandidate = evaluationResult.getValue();
IVariableManager childVariableManager = this.getVariableManager().createChild();
- childVariableManager.put(EEFExpressionUtils.EEFGroup.GROUP_SEMANTIC_CANDIDATE, groupSemanticCandidate);
- EEFGroupImpl eefGroupImpl = new EEFGroupImpl(this, eefGroupDescription, childVariableManager, this.getInterpreter(),
+ childVariableManager.put(EEFExpressionUtils.SELF, groupSemanticCandidate);
+ EEFGroupImpl eefGroupImpl = new EEFGroupImpl(this, eefGroupDescription, childVariableManager, this.interpreter,
this.editingDomain);
- eefGroupImpl.createControl();
eefGroups.add(eefGroupImpl);
}
} else {
IVariableManager childVariableManager = this.getVariableManager().createChild();
- EEFGroupImpl eefGroupImpl = new EEFGroupImpl(this, eefGroupDescription, childVariableManager, this.getInterpreter(),
- this.editingDomain);
- eefGroupImpl.createControl();
+ EEFGroupImpl eefGroupImpl = new EEFGroupImpl(this, eefGroupDescription, childVariableManager, this.interpreter, this.editingDomain);
eefGroups.add(eefGroupImpl);
}
}
@@ -119,38 +122,13 @@ public class EEFPageImpl extends AbstractEEFChildObject implements EEFPage {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.core.api.EEFObject#setInput(java.lang.Object)
- */
- @Override
- public void setInput(Object object) {
- for (int i = 0; i < this.eefGroups.size(); i = i + 1) {
- EEFGroup eefGroup = this.eefGroups.get(i);
- if (eefGroup instanceof EEFGroupImpl) {
- EEFGroupImpl eefGroupImpl = (EEFGroupImpl) eefGroup;
-
- String semanticCandidatesExpression = eefGroupImpl.getDescription().getSemanticCandidateExpression();
- if (semanticCandidatesExpression != null && semanticCandidatesExpression.trim().length() > 0) {
- IEvaluationResult evaluationResult = this.getInterpreter().evaluateExpression(this.getVariableManager().getVariables(),
- semanticCandidatesExpression);
- Object groupSemanticCandidate = evaluationResult.getValue();
- eefGroupImpl.setInput(groupSemanticCandidate);
- } else {
- eefGroupImpl.setInput(null);
- }
- }
- }
- }
-
- /**
- * {@inheritDoc}
- *
* @see org.eclipse.eef.core.api.EEFPage#getLabel()
*/
@Override
public String getLabel() {
String labelExpression = this.eefPageDescription.getLabelExpression();
if (labelExpression != null) {
- IEvaluationResult evaluationResult = this.getInterpreter().evaluateExpression(this.getVariableManager().getVariables(), labelExpression);
+ IEvaluationResult evaluationResult = this.interpreter.evaluateExpression(this.getVariableManager().getVariables(), labelExpression);
if (evaluationResult.getValue() != null) {
return evaluationResult.getValue().toString();
}
@@ -178,14 +156,19 @@ public class EEFPageImpl extends AbstractEEFChildObject implements EEFPage {
return this.eefPageDescription;
}
+ @Override
+ public EEFView getView() {
+ return this.eefView;
+ }
+
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.core.api.EEFChildObject#getParent()
+ * @see org.eclipse.eef.core.api.EEFPage#getVariableManager()
*/
@Override
- public EEFView getParent() {
- return this.eefView;
+ public IVariableManager getVariableManager() {
+ return this.variableManager;
}
}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFTextImpl.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFTextImpl.java
deleted file mode 100644
index 66e985321..000000000
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFTextImpl.java
+++ /dev/null
@@ -1,191 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.core.internal;
-
-import java.util.HashMap;
-import java.util.Map;
-
-import org.eclipse.eef.EEFTextDescription;
-import org.eclipse.eef.core.api.EEFContainer;
-import org.eclipse.eef.core.api.EEFExpressionUtils;
-import org.eclipse.eef.core.api.EEFText;
-import org.eclipse.eef.core.api.IConsumer;
-import org.eclipse.eef.core.api.IVariableManager;
-import org.eclipse.eef.interpreter.api.IEvaluationResult;
-import org.eclipse.eef.interpreter.api.IInterpreter;
-import org.eclipse.emf.transaction.TransactionalEditingDomain;
-
-/**
- * The implementation of the {@link EEFText}.
- *
- * @author sbegaudeau
- */
-public class EEFTextImpl extends AbstractEEFWidgetImpl implements EEFText {
-
- /**
- * The description.
- */
- private EEFTextDescription eefTextDescription;
-
- /**
- * The parent.
- */
- private EEFContainer eefContainer;
-
- /**
- * The consumer of the value expression.
- */
- private IConsumer<String> valueExpressionConsumer;
-
- /**
- * The consumer of the label expression.
- */
- private IConsumer<String> labelExpressionConsumer;
-
- /**
- * The editing domain.
- */
- private TransactionalEditingDomain editingDomain;
-
- /**
- * The constructor.
- *
- * @param eefContainer
- * The parent of the widget
- * @param eefTextDescription
- * The description
- * @param variableManager
- * The variable manager
- * @param interpreter
- * The interpreter
- * @param editingDomain
- * The editing domain
- */
- public EEFTextImpl(EEFContainer eefContainer, EEFTextDescription eefTextDescription, IVariableManager variableManager, IInterpreter interpreter,
- TransactionalEditingDomain editingDomain) {
- super(variableManager, interpreter);
- this.eefTextDescription = eefTextDescription;
- this.eefContainer = eefContainer;
- this.editingDomain = editingDomain;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFObject#createControl()
- */
- @Override
- public void createControl() {
- // do nothing
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFObject#setInput(java.lang.Object)
- */
- @Override
- public void setInput(Object object) {
- String valueExpression = EEFTextImpl.this.eefTextDescription.getValueExpression();
- if (valueExpression != null) {
- IEvaluationResult evaluationResult = EEFTextImpl.this.getInterpreter()
- .evaluateExpression(EEFTextImpl.this.getVariableManager().getVariables(), valueExpression);
- Object value = evaluationResult.getValue();
- if (value instanceof String && EEFTextImpl.this.valueExpressionConsumer != null) {
- EEFTextImpl.this.valueExpressionConsumer.apply((String) value);
- }
- }
-
- String labelExpression = EEFTextImpl.this.eefTextDescription.getLabelExpression();
- if (labelExpression != null) {
- IEvaluationResult evaluationResult = EEFTextImpl.this.getInterpreter()
- .evaluateExpression(EEFTextImpl.this.getVariableManager().getVariables(), labelExpression);
- Object value = evaluationResult.getValue();
- if (value instanceof String && EEFTextImpl.this.labelExpressionConsumer != null) {
- EEFTextImpl.this.labelExpressionConsumer.apply((String) value);
- }
- }
- }
-
- @Override
- public void updateValue(final Object selection, final String newValue) {
- String editExpression = EEFTextImpl.this.eefTextDescription.getEditExpression();
- if (editExpression != null) {
- Map<String, Object> variables = new HashMap<String, Object>();
- variables.putAll(EEFTextImpl.this.getVariableManager().getVariables());
- variables.put(EEFExpressionUtils.EEFText.NEW_VALUE, newValue);
-
- // FIXME REMOVE THIS HARDCODED STUFF!!!!
- variables.put("selection", selection); //$NON-NLS-1$
- EEFTextImpl.this.getInterpreter().evaluateExpression(variables, editExpression);
- }
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFText#addValueExpressionConsumer(org.eclipse.eef.core.api.IConsumer)
- */
- @Override
- public void addValueExpressionConsumer(IConsumer<String> consumer) {
- this.valueExpressionConsumer = consumer;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFText#removeValueExpressionConsumer()
- */
- @Override
- public void removeValueExpressionConsumer() {
- this.valueExpressionConsumer = null;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFText#addLabelExpressionConsumer(org.eclipse.eef.core.api.IConsumer)
- */
- @Override
- public void addLabelExpressionConsumer(IConsumer<String> consumer) {
- this.labelExpressionConsumer = consumer;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFText#removeLabelExpressionConsumer()
- */
- @Override
- public void removeLabelExpressionConsumer() {
- this.labelExpressionConsumer = null;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFText#getDescription()
- */
- @Override
- public EEFTextDescription getDescription() {
- return this.eefTextDescription;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.core.api.EEFChildObject#getParent()
- */
- @Override
- public EEFContainer getParent() {
- return this.eefContainer;
- }
-}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFVariableManager.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFVariableManager.java
index bcd73975c..c9e1f1479 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFVariableManager.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFVariableManager.java
@@ -12,7 +12,9 @@ package org.eclipse.eef.core.internal;
import com.google.common.collect.Maps;
+import java.util.ArrayList;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
import org.eclipse.eef.core.api.IVariableManager;
@@ -35,6 +37,11 @@ public class EEFVariableManager implements IVariableManager {
private Map<String, Object> variables = new HashMap<String, Object>();
/**
+ * The child variable manager.
+ */
+ private List<IVariableManager> children = new ArrayList<IVariableManager>();
+
+ /**
* The constructor.
*/
public EEFVariableManager() {
@@ -85,7 +92,21 @@ public class EEFVariableManager implements IVariableManager {
@Override
public IVariableManager createChild() {
IVariableManager variableManager = new EEFVariableManager(this);
+ this.children.add(variableManager);
return variableManager;
}
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.core.api.IVariableManager#clear()
+ */
+ @Override
+ public void clear() {
+ this.variables.clear();
+
+ for (IVariableManager variableManager : children) {
+ variableManager.clear();
+ }
+ }
}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFViewImpl.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFViewImpl.java
index 4c3b82a42..ec91947fb 100644
--- a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFViewImpl.java
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/EEFViewImpl.java
@@ -16,36 +16,39 @@ import java.util.List;
import org.eclipse.eef.EEFPageDescription;
import org.eclipse.eef.EEFViewDescription;
import org.eclipse.eef.core.api.EEFExpressionUtils;
+import org.eclipse.eef.core.api.EEFGroup;
import org.eclipse.eef.core.api.EEFPage;
import org.eclipse.eef.core.api.EEFView;
import org.eclipse.eef.core.api.IVariableManager;
-import org.eclipse.eef.interpreter.api.IEvaluationResult;
-import org.eclipse.eef.interpreter.api.IInterpreter;
import org.eclipse.emf.common.command.Command;
import org.eclipse.emf.common.command.CommandStack;
import org.eclipse.emf.common.util.Diagnostic;
-import org.eclipse.emf.transaction.NotificationFilter;
+import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.transaction.RecordingCommand;
-import org.eclipse.emf.transaction.ResourceSetChangeEvent;
-import org.eclipse.emf.transaction.ResourceSetListenerImpl;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.sirius.common.interpreter.api.IEvaluationResult;
+import org.eclipse.sirius.common.interpreter.api.IInterpreter;
/**
* The implementation of the {@link EEFView}.
*
* @author sbegaudeau
*/
-public class EEFViewImpl extends AbstractEEFObject implements EEFView {
+public class EEFViewImpl implements EEFView {
+ /**
+ * The variable manager.
+ */
+ private IVariableManager variableManager;
/**
- * The description.
+ * The interpreter.
*/
- private EEFViewDescription eefViewDescription;
+ private IInterpreter interpreter;
/**
- * The {@link EEFPage} of the view.
+ * The description.
*/
- private List<EEFPage> eefPages = new ArrayList<EEFPage>();
+ private EEFViewDescription eefViewDescription;
/**
* The editing domain.
@@ -53,6 +56,11 @@ public class EEFViewImpl extends AbstractEEFObject implements EEFView {
private TransactionalEditingDomain editingDomain;
/**
+ * The {@link EEFPage} of the view.
+ */
+ private List<EEFPage> eefPages = new ArrayList<EEFPage>();
+
+ /**
* The constructor.
*
* @param eefViewDescription
@@ -66,7 +74,8 @@ public class EEFViewImpl extends AbstractEEFObject implements EEFView {
*/
public EEFViewImpl(EEFViewDescription eefViewDescription, IVariableManager variableManager, IInterpreter interpreter,
TransactionalEditingDomain editingDomain) {
- super(variableManager, interpreter);
+ this.variableManager = variableManager;
+ this.interpreter = interpreter;
this.eefViewDescription = eefViewDescription;
this.editingDomain = editingDomain;
}
@@ -74,69 +83,91 @@ public class EEFViewImpl extends AbstractEEFObject implements EEFView {
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.core.api.EEFObject#createControl()
+ * @see org.eclipse.eef.core.api.EEFView#initialize()
*/
@Override
- public void createControl() {
+ public void initialize() {
Command command = new RecordingCommand(this.editingDomain) {
@Override
protected void doExecute() {
- List<EEFPageDescription> eefPageDescriptions = EEFViewImpl.this.getDescription().getPages();
- for (EEFPageDescription eefPageDescription : eefPageDescriptions) {
- IVariableManager childVariableManager = EEFViewImpl.this.getVariableManager().createChild();
-
- final String semanticCandidateExpression = eefPageDescription.getSemanticCandidateExpression();
- if (semanticCandidateExpression != null && semanticCandidateExpression.trim().length() > 0) {
-
- IEvaluationResult evaluationResult = EEFViewImpl.this.getInterpreter()
- .evaluateExpression(EEFViewImpl.this.getVariableManager().getVariables(), semanticCandidateExpression);
- if (Diagnostic.OK == evaluationResult.getDiagnostic().getSeverity()) {
- childVariableManager.put(EEFExpressionUtils.EEFPage.PAGE_SEMANTIC_CANDIDATE, evaluationResult.getValue());
- }
- }
-
- EEFPageImpl ePage = new EEFPageImpl(EEFViewImpl.this, eefPageDescription, childVariableManager, EEFViewImpl.this.getInterpreter(),
- EEFViewImpl.this.editingDomain);
- ePage.createControl();
- eefPages.add(ePage);
- }
+ EEFViewImpl.this.doInitialize();
}
};
- this.editingDomain.addResourceSetListener(new ResourceSetListenerImpl(NotificationFilter.NOT_TOUCH) {
- @Override
- public void resourceSetChanged(ResourceSetChangeEvent event) {
- for (EEFPage eefPage : EEFViewImpl.this.eefPages) {
- if (eefPage instanceof EEFPageImpl) {
- EEFPageImpl eefPageImpl = (EEFPageImpl) eefPage;
- //System.out.println("Resource Set changed: " + event); //$NON-NLS-1$
- eefPageImpl.setInput(null);
- }
+ CommandStack commandStack = this.editingDomain.getCommandStack();
+ commandStack.execute(command);
+ }
+
+ /**
+ * Performs the initialization of the view by creating the necessary pages.
+ */
+ private void doInitialize() {
+ List<EEFPageDescription> eefPageDescriptions = EEFViewImpl.this.getDescription().getPages();
+ for (EEFPageDescription eefPageDescription : eefPageDescriptions) {
+ EEFPageImpl ePage = null;
+ final String semanticCandidateExpression = eefPageDescription.getSemanticCandidateExpression();
+ if (semanticCandidateExpression != null && semanticCandidateExpression.trim().length() > 0) {
+ IEvaluationResult evaluationResult = EEFViewImpl.this.interpreter.evaluateExpression(EEFViewImpl.this.variableManager.getVariables(),
+ semanticCandidateExpression);
+ if (Diagnostic.OK == evaluationResult.getDiagnostic().getSeverity() && evaluationResult.getValue() != null) {
+ IVariableManager childVariableManager = EEFViewImpl.this.variableManager.createChild();
+ childVariableManager.put(EEFExpressionUtils.SELF, evaluationResult.getValue());
+ ePage = new EEFPageImpl(EEFViewImpl.this, eefPageDescription, childVariableManager, EEFViewImpl.this.interpreter,
+ EEFViewImpl.this.editingDomain);
}
+ } else {
+ ePage = new EEFPageImpl(EEFViewImpl.this, eefPageDescription, EEFViewImpl.this.variableManager.createChild(),
+ EEFViewImpl.this.interpreter, EEFViewImpl.this.editingDomain);
}
- @Override
- public boolean isPostcommitOnly() {
- return true;
+ if (ePage != null) {
+ ePage.initialize();
+ eefPages.add(ePage);
}
- });
-
- CommandStack commandStack = this.editingDomain.getCommandStack();
- commandStack.execute(command);
+ }
}
/**
* {@inheritDoc}
*
- * @see org.eclipse.eef.core.api.EEFObject#setInput(java.lang.Object)
+ * @see org.eclipse.eef.core.api.EEFView#setInput(org.eclipse.emf.ecore.EObject)
*/
@Override
- public void setInput(Object object) {
- this.getVariableManager().put(EEFExpressionUtils.EEFView.VIEW_SEMANTIC_CANDIDATE, object);
- for (EEFPage eefPage : this.eefPages) {
- if (eefPage instanceof EEFPageImpl) {
- EEFPageImpl eefPageImpl = (EEFPageImpl) eefPage;
- eefPageImpl.setInput(null);
+ public void setInput(EObject eObject) {
+ Object selfValue = this.variableManager.getVariables().get(EEFExpressionUtils.SELF);
+ if (eObject != selfValue) {
+ // Invalidate and update the content of the variable manager with the new input
+ this.variableManager.clear();
+
+ this.variableManager.put(EEFExpressionUtils.SELF, eObject);
+
+ for (EEFPage eefPage : eefPages) {
+ String pageSemanticCandidateExpression = eefPage.getDescription().getSemanticCandidateExpression();
+ if (pageSemanticCandidateExpression != null && pageSemanticCandidateExpression.trim().length() > 0) {
+
+ IEvaluationResult evaluationResult = EEFViewImpl.this.interpreter.evaluateExpression(
+ EEFViewImpl.this.variableManager.getVariables(), pageSemanticCandidateExpression);
+ if (Diagnostic.OK == evaluationResult.getDiagnostic().getSeverity() && evaluationResult.getValue() != null) {
+ eefPage.getVariableManager().put(EEFExpressionUtils.SELF, evaluationResult.getValue());
+ } else {
+ // Something is very wrong here...
+ }
+ }
+
+ List<EEFGroup> groups = eefPage.getGroups();
+ for (EEFGroup eefGroup : groups) {
+ String groupSemanticCandidateExpression = eefGroup.getDescription().getSemanticCandidateExpression();
+ if (groupSemanticCandidateExpression != null && groupSemanticCandidateExpression.trim().length() > 0) {
+
+ IEvaluationResult evaluationResult = EEFViewImpl.this.interpreter.evaluateExpression(eefPage.getVariableManager()
+ .getVariables(), groupSemanticCandidateExpression);
+ if (Diagnostic.OK == evaluationResult.getDiagnostic().getSeverity() && evaluationResult.getValue() != null) {
+ eefGroup.getVariableManager().put(EEFExpressionUtils.SELF, evaluationResult.getValue());
+ } else {
+ // Something is very wrong here...
+ }
+ }
+ }
}
}
}
diff --git a/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/controllers/EEFTextControllerImpl.java b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/controllers/EEFTextControllerImpl.java
new file mode 100644
index 000000000..b8d8d5d6f
--- /dev/null
+++ b/plugins/org.eclipse.eef.core/src/org/eclipse/eef/core/internal/controllers/EEFTextControllerImpl.java
@@ -0,0 +1,176 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Obeo - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.eef.core.internal.controllers;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.eclipse.eef.EEFTextDescription;
+import org.eclipse.eef.core.api.EEFExpressionUtils;
+import org.eclipse.eef.core.api.IVariableManager;
+import org.eclipse.eef.core.api.controllers.EEFTextController;
+import org.eclipse.eef.core.api.controllers.IConsumer;
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.command.CommandStack;
+import org.eclipse.emf.transaction.RecordingCommand;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.sirius.common.interpreter.api.IEvaluationResult;
+import org.eclipse.sirius.common.interpreter.api.IInterpreter;
+
+/**
+ * This class will be used in order to manage the behavior of the text.
+ *
+ * @author sbegaudeau
+ */
+public class EEFTextControllerImpl implements EEFTextController {
+ /**
+ * The description.
+ */
+ private EEFTextDescription description;
+
+ /**
+ * The variable manager.
+ */
+ private IVariableManager variableManager;
+
+ /**
+ * The interpreter.
+ */
+ private IInterpreter interpreter;
+
+ /**
+ * The editing domain.
+ */
+ private TransactionalEditingDomain editingDomain;
+
+ /**
+ * The consumer of a new value of the text.
+ */
+ private IConsumer<String> newValueConsumer;
+
+ /**
+ * The consumer of a new value of the label.
+ */
+ private IConsumer<String> newLabelConsumer;
+
+ /**
+ * The constructor.
+ *
+ * @param description
+ * The description
+ * @param variableManager
+ * The variable manager
+ * @param interpreter
+ * The interpreter
+ * @param editingDomain
+ * The editing domain
+ */
+ public EEFTextControllerImpl(EEFTextDescription description, IVariableManager variableManager, IInterpreter interpreter,
+ TransactionalEditingDomain editingDomain) {
+ this.description = description;
+ this.variableManager = variableManager;
+ this.interpreter = interpreter;
+ this.editingDomain = editingDomain;
+ }
+
+ @Override
+ public void updateValue(final String text) {
+ Command command = new RecordingCommand(this.editingDomain) {
+ @Override
+ protected void doExecute() {
+ String editExpression = EEFTextControllerImpl.this.description.getEditExpression();
+ if (editExpression != null) {
+ Map<String, Object> variables = new HashMap<String, Object>();
+ variables.putAll(EEFTextControllerImpl.this.variableManager.getVariables());
+ variables.put(EEFExpressionUtils.EEFText.NEW_VALUE, text);
+ //variables.put("selection", selection); //$NON-NLS-1$
+
+ EEFTextControllerImpl.this.interpreter.evaluateExpression(variables, editExpression);
+ }
+ }
+
+ @Override
+ public boolean canExecute() {
+ return true;
+ }
+ };
+
+ CommandStack commandStack = this.editingDomain.getCommandStack();
+ commandStack.execute(command);
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.core.api.controllers.EEFTextController#refresh()
+ */
+ @Override
+ public void refresh() {
+ String valueExpression = this.description.getValueExpression();
+ if (valueExpression != null) {
+ IEvaluationResult evaluationResult = this.interpreter.evaluateExpression(this.variableManager.getVariables(), valueExpression);
+ Object value = evaluationResult.getValue();
+ if (value instanceof String && this.newValueConsumer != null) {
+ this.newValueConsumer.apply((String) value);
+ }
+ }
+
+ String labelExpression = this.description.getLabelExpression();
+ if (labelExpression != null) {
+ IEvaluationResult evaluationResult = this.interpreter.evaluateExpression(this.variableManager.getVariables(), labelExpression);
+ Object value = evaluationResult.getValue();
+ if (value instanceof String && this.newLabelConsumer != null) {
+ this.newLabelConsumer.apply((String) value);
+ }
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.core.api.controllers.EEFTextController#onNewValue(org.eclipse.eef.core.api.controllers.IConsumer)
+ */
+ @Override
+ public void onNewValue(IConsumer<String> consumer) {
+ this.newValueConsumer = consumer;
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.core.api.controllers.EEFTextController#onNewLabel(org.eclipse.eef.core.api.controllers.IConsumer)
+ */
+ @Override
+ public void onNewLabel(IConsumer<String> consumer) {
+ this.newLabelConsumer = consumer;
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.core.api.controllers.EEFTextController#removeNewValueConsumer()
+ */
+ @Override
+ public void removeNewValueConsumer() {
+ this.newValueConsumer = null;
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.core.api.controllers.EEFTextController#removeNewLabelConsumer()
+ */
+ @Override
+ public void removeNewLabelConsumer() {
+ this.newLabelConsumer = null;
+ }
+
+}
diff --git a/plugins/org.eclipse.eef.ide.ui/META-INF/MANIFEST.MF b/plugins/org.eclipse.eef.ide.ui/META-INF/MANIFEST.MF
index 965390fe6..dabf150e6 100644
--- a/plugins/org.eclipse.eef.ide.ui/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.eef.ide.ui/META-INF/MANIFEST.MF
@@ -8,9 +8,10 @@ Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Import-Package: org.eclipse.eef;version="[2.0.0,3.0.0)",
org.eclipse.eef.api;version="[2.0.0,3.0.0)",
org.eclipse.eef.core.api;version="[2.0.0,3.0.0)",
+ org.eclipse.eef.core.api.controllers;version="2.0.0",
org.eclipse.eef.ide.internal;version="[2.0.0,3.0.0)",
org.eclipse.eef.ide.internal.extensions;version="[2.0.0,3.0.0)",
- org.eclipse.eef.interpreter.api;version="[2.0.0,3.0.0)"
+ org.eclipse.sirius.common.interpreter.api;version="[1.0.0,2.0.0)"
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.7.0,4.0.0)",
org.eclipse.ui.views.properties.tabbed;bundle-version="[3.0.0,4.0.0)",
org.eclipse.emf.common;bundle-version="[2.8.0,3.0.0)",
@@ -18,7 +19,8 @@ Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.7.0,4.0.0)",
org.eclipse.emf.transaction;bundle-version="[1.4.0,2.0.0)"
Export-Package: org.eclipse.eef.ide.ui.api;version="2.0.0",
org.eclipse.eef.ide.ui.internal;version="2.0.0";x-internal:=true,
- org.eclipse.eef.ide.ui.internal.data;version="2.0.0";x-internal:=true
+ org.eclipse.eef.ide.ui.internal.properties;version="2.0.0";x-internal:=true,
+ org.eclipse.eef.ide.ui.internal.widgets;version="2.0.0"
Bundle-Localization: plugin
Bundle-ActivationPolicy: lazy
Bundle-Activator: org.eclipse.eef.ide.ui.internal.EEFIdeUiPlugin$Implementation
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/TabDescriptorFilter.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/TabDescriptorFilter.java
index 5cfd652d1..d06f81a9f 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/TabDescriptorFilter.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/api/TabDescriptorFilter.java
@@ -15,7 +15,6 @@ import java.util.List;
import org.eclipse.eef.EEFViewDescription;
import org.eclipse.eef.api.IEEFViewDescriptionProvider;
-import org.eclipse.eef.core.api.EEFExpressionUtils;
import org.eclipse.eef.core.api.EEFPage;
import org.eclipse.eef.core.api.EEFVariableManagerFactory;
import org.eclipse.eef.core.api.EEFView;
@@ -24,9 +23,10 @@ import org.eclipse.eef.core.api.IVariableManager;
import org.eclipse.eef.ide.internal.EEFIdePlugin;
import org.eclipse.eef.ide.internal.extensions.IItemDescriptor;
import org.eclipse.eef.ide.internal.extensions.IItemRegistry;
-import org.eclipse.eef.ide.ui.internal.data.EEFTabDescriptor;
-import org.eclipse.eef.interpreter.api.IInterpreterProvider;
+import org.eclipse.eef.ide.ui.internal.properties.EEFTabDescriptor;
+import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.sirius.common.interpreter.api.IInterpreterProvider;
import org.eclipse.ui.views.properties.tabbed.ITabDescriptor;
/**
@@ -50,16 +50,12 @@ public class TabDescriptorFilter {
List<IInterpreterProvider> interpreterProviders = this.getInterprerProviders();
List<ITabDescriptor> tabDescriptors = new ArrayList<ITabDescriptor>();
- if (eefViewDescriptions.size() > 0) {
+ if (eefViewDescriptions.size() > 0 && objects.length > 0 && objects[0] instanceof EObject) {
EEFViewDescription eefViewDescription = eefViewDescriptions.get(0);
+ EObject eObject = (EObject) objects[0];
IVariableManager variableManager = new EEFVariableManagerFactory().createVariableManager();
- if (objects.length == 1) {
- variableManager.put(EEFExpressionUtils.EEFView.VIEW_SEMANTIC_CANDIDATE, objects[0]);
- } else {
- // TODO Add support for multiple input
- }
- EEFView eefView = new EEFViewFactory().createEEFView(eefViewDescription, variableManager, interpreterProviders, editingDomain);
+ EEFView eefView = new EEFViewFactory().createEEFView(eefViewDescription, variableManager, interpreterProviders, editingDomain, eObject);
List<EEFPage> eefPages = eefView.getPages();
for (EEFPage eefPage : eefPages) {
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/data/EEFSection.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/data/EEFSection.java
deleted file mode 100644
index 1fd315fcb..000000000
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/data/EEFSection.java
+++ /dev/null
@@ -1,245 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.ide.ui.internal.data;
-
-import java.util.ArrayList;
-import java.util.List;
-
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.eef.core.api.EEFChildObject;
-import org.eclipse.eef.core.api.EEFContainer;
-import org.eclipse.eef.core.api.EEFGroup;
-import org.eclipse.eef.core.api.EEFObject;
-import org.eclipse.eef.core.api.EEFText;
-import org.eclipse.eef.core.api.EEFView;
-import org.eclipse.eef.core.api.EEFWidget;
-import org.eclipse.eef.core.api.IConsumer;
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.jface.viewers.ISelection;
-import org.eclipse.jface.viewers.IStructuredSelection;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.custom.CLabel;
-import org.eclipse.swt.events.ModifyEvent;
-import org.eclipse.swt.events.ModifyListener;
-import org.eclipse.swt.layout.FormAttachment;
-import org.eclipse.swt.layout.FormData;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
-import org.eclipse.swt.widgets.Text;
-import org.eclipse.swt.widgets.Widget;
-import org.eclipse.ui.IWorkbenchPart;
-import org.eclipse.ui.views.properties.tabbed.ISection;
-import org.eclipse.ui.views.properties.tabbed.ITabbedPropertyConstants;
-import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage;
-import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory;
-
-/**
- * The implementation of {@link ISection} using the {@link EEFSectionDescriptor}.
- *
- * @author sbegaudeau
- */
-public class EEFSection implements ISection {
-
- /**
- * The section descriptor.
- */
- private EEFSectionDescriptor eefSectionDescriptor;
-
- /**
- * The widgets of this section.
- */
- private List<Widget> widgets = new ArrayList<Widget>();
-
- /**
- * The current selection.
- */
- private Object currentSelection;
-
- /**
- * The constructor.
- *
- * @param eefSectionDescriptor
- * The section descriptor
- */
- public EEFSection(EEFSectionDescriptor eefSectionDescriptor) {
- this.eefSectionDescriptor = eefSectionDescriptor;
- }
-
- @Override
- public void createControls(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage) {
- TabbedPropertySheetWidgetFactory widgetFactory = tabbedPropertySheetPage.getWidgetFactory();
-
- EEFGroup eefGroup = this.eefSectionDescriptor.getEEFGroup();
- EEFContainer eefContainer = eefGroup.getContainer();
-
- if (eefContainer != null) {
- Composite sectionComposite = widgetFactory.createFlatFormComposite(parent);
-
- List<EEFWidget> eefWidgets = eefContainer.getWidgets();
- for (EEFWidget eefWidget : eefWidgets) {
- if (eefWidget instanceof EEFText) {
- EEFText eefText = (EEFText) eefWidget;
-
- Text text = widgetFactory.createText(sectionComposite, ""); //$NON-NLS-1$
- FormData data = new FormData();
-
- final int textOffset = 232;
- data.left = new FormAttachment(0, textOffset);
- data.right = new FormAttachment(100, 0);
- data.top = new FormAttachment(0, ITabbedPropertyConstants.VSPACE);
-
- text.setLayoutData(data);
- text.setEnabled(false);
- text.setData(eefText);
- this.widgets.add(text);
-
- if (eefText.getDescription().getLabelExpression() != null && eefText.getDescription().getLabelExpression().trim().length() > 0) {
- CLabel label = widgetFactory.createCLabel(sectionComposite, ""); //$NON-NLS-1$
-
- final int labelOffset = 20;
- data = new FormData();
- data.left = new FormAttachment(0, 0);
- data.right = new FormAttachment(text, -ITabbedPropertyConstants.HSPACE - labelOffset);
- data.top = new FormAttachment(text, 0, SWT.CENTER);
- label.setLayoutData(data);
-
- label.setData(eefText);
- this.widgets.add(label);
- }
-
- }
- }
- }
- }
-
- @Override
- public void setInput(IWorkbenchPart part, ISelection selection) {
- if (selection instanceof IStructuredSelection) {
- IStructuredSelection iStructuredSelection = (IStructuredSelection) selection;
- Object object = iStructuredSelection.getFirstElement();
-
- this.currentSelection = ((IStructuredSelection) selection).getFirstElement();
-
- EObject eObject = Platform.getAdapterManager().getAdapter(object, EObject.class);
-
- if (eObject != null) {
- for (Widget widget : widgets) {
- if (widget instanceof Text && ((Text) widget).getData() instanceof EEFText) {
- Text text = (Text) widget;
- EEFText eefText = (EEFText) text.getData();
- EEFView eefView = this.getEEFView(eefText);
- eefView.setInput(eObject);
- }
- }
- }
- }
- }
-
- /**
- * Finds the root {@link EEFView} from the given {@link EEFChildObject}.
- *
- * @param eefChildObject
- * The {@link EEFChildObject}
- * @return The root {@link EEFView}
- */
- private EEFView getEEFView(EEFChildObject eefChildObject) {
- EEFView eefView = null;
-
- EEFChildObject child = eefChildObject;
- while (eefView == null) {
- EEFObject parent = child.getParent();
- if (parent instanceof EEFChildObject) {
- child = (EEFChildObject) parent;
- } else if (parent instanceof EEFView) {
- eefView = (EEFView) parent;
- }
- }
-
- return eefView;
- }
-
- @Override
- public void aboutToBeShown() {
- for (Widget widget : widgets) {
- if (widget instanceof CLabel && ((CLabel) widget).getData() instanceof EEFText) {
- final CLabel label = (CLabel) widget;
- final EEFText eefText = (EEFText) label.getData();
-
- eefText.addLabelExpressionConsumer(new IConsumer<String>() {
- @Override
- public void apply(String value) {
- if (!label.isDisposed()) {
- label.setText(value);
- }
- }
- });
- } else if (widget instanceof Text && ((Text) widget).getData() instanceof EEFText) {
- final Text text = (Text) widget;
- final EEFText eefText = (EEFText) text.getData();
-
- eefText.addValueExpressionConsumer(new IConsumer<String>() {
- @Override
- public void apply(String value) {
- if (!text.isDisposed()) {
- text.setText(value);
- if (!text.isEnabled()) {
- text.setEnabled(true);
- }
- }
- }
- });
-
- text.addModifyListener(new ModifyListener() {
- @Override
- public void modifyText(ModifyEvent e) {
- eefText.updateValue(currentSelection, text.getText());
- }
- });
- }
- }
- }
-
- @Override
- public void aboutToBeHidden() {
- for (Widget widget : widgets) {
- if (!widget.isDisposed() && widget instanceof Label && ((Label) widget).getData() instanceof EEFText) {
- final Label label = (Label) widget;
- EEFText eefText = (EEFText) label.getData();
- eefText.removeLabelExpressionConsumer();
- } else if (!widget.isDisposed() && widget instanceof Text && ((Text) widget).getData() instanceof EEFText) {
- final Text text = (Text) widget;
- EEFText eefText = (EEFText) text.getData();
- eefText.removeValueExpressionConsumer();
- }
- }
- }
-
- @Override
- public void dispose() {
- // do something
- }
-
- @Override
- public int getMinimumHeight() {
- return SWT.DEFAULT;
- }
-
- @Override
- public boolean shouldUseExtraSpace() {
- return true;
- }
-
- @Override
- public void refresh() {
- // do something
- }
-
-}
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/properties/EEFSection.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/properties/EEFSection.java
new file mode 100644
index 000000000..8e4882994
--- /dev/null
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/properties/EEFSection.java
@@ -0,0 +1,127 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Obeo - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.eef.ide.ui.internal.properties;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.eef.EEFContainerDescription;
+import org.eclipse.eef.core.api.EEFGroup;
+import org.eclipse.eef.core.api.EEFPage;
+import org.eclipse.eef.ide.ui.internal.widgets.EEFContainerLifecycleManager;
+import org.eclipse.eef.ide.ui.internal.widgets.ILifecycleManager;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.views.properties.tabbed.ISection;
+import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage;
+
+/**
+ * The implementation of {@link ISection} using the {@link EEFSectionDescriptor}.
+ *
+ * @author sbegaudeau
+ */
+public class EEFSection implements ISection {
+
+ /**
+ * The section descriptor.
+ */
+ private EEFSectionDescriptor eefSectionDescriptor;
+
+ /**
+ * The lifecycle managers of this section.
+ */
+ private List<ILifecycleManager> lifecycleManagers = new ArrayList<ILifecycleManager>();
+
+ /**
+ * The constructor.
+ *
+ * @param eefSectionDescriptor
+ * The section descriptor
+ */
+ public EEFSection(EEFSectionDescriptor eefSectionDescriptor) {
+ this.eefSectionDescriptor = eefSectionDescriptor;
+ }
+
+ @Override
+ public void createControls(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage) {
+ EEFGroup eefGroup = this.eefSectionDescriptor.getEEFGroup();
+ EEFContainerDescription eefContainerDescription = eefGroup.getDescription().getContainer();
+
+ if (eefContainerDescription != null) {
+ EEFContainerLifecycleManager containerLifecycleManager = new EEFContainerLifecycleManager(eefContainerDescription, eefGroup
+ .getVariableManager().createChild(), eefGroup.getInterpreter(), eefGroup.getEditingDomain());
+ containerLifecycleManager.createControl(parent, tabbedPropertySheetPage);
+
+ this.lifecycleManagers.add(containerLifecycleManager);
+ }
+ }
+
+ @Override
+ public void aboutToBeShown() {
+ for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ lifecycleManager.aboutToBeShown();
+ }
+ }
+
+ @Override
+ public void setInput(IWorkbenchPart part, ISelection selection) {
+ if (selection instanceof IStructuredSelection) {
+ IStructuredSelection iStructuredSelection = (IStructuredSelection) selection;
+ Object object = iStructuredSelection.getFirstElement();
+
+ EObject eObject = Platform.getAdapterManager().getAdapter(object, EObject.class);
+
+ // Update the input of the view only
+ EEFGroup eefGroup = this.eefSectionDescriptor.getEEFGroup();
+ EEFPage eefPage = eefGroup.getPage();
+
+ // TODO we should create a whole context with the current selection etc for the context
+ eefPage.getView().setInput(eObject);
+ }
+ }
+
+ @Override
+ public void refresh() {
+ for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ lifecycleManager.refresh();
+ }
+ }
+
+ @Override
+ public void aboutToBeHidden() {
+ for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ lifecycleManager.aboutToBeHidden();
+ }
+ }
+
+ @Override
+ public void dispose() {
+ for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ lifecycleManager.dispose();
+ }
+ }
+
+ @Override
+ public int getMinimumHeight() {
+ return SWT.DEFAULT;
+ }
+
+ @Override
+ public boolean shouldUseExtraSpace() {
+ return true;
+ }
+
+}
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/data/EEFSectionDescriptor.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/properties/EEFSectionDescriptor.java
index 61f59a592..6f54d27d2 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/data/EEFSectionDescriptor.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/properties/EEFSectionDescriptor.java
@@ -8,7 +8,7 @@
* Contributors:
* Obeo - initial API and implementation
*******************************************************************************/
-package org.eclipse.eef.ide.ui.internal.data;
+package org.eclipse.eef.ide.ui.internal.properties;
import org.eclipse.eef.core.api.EEFGroup;
import org.eclipse.jface.viewers.IFilter;
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/data/EEFTabDescriptor.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/properties/EEFTabDescriptor.java
index 3eaf5bd86..2d73d8da6 100644
--- a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/data/EEFTabDescriptor.java
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/properties/EEFTabDescriptor.java
@@ -8,7 +8,7 @@
* Contributors:
* Obeo - initial API and implementation
*******************************************************************************/
-package org.eclipse.eef.ide.ui.internal.data;
+package org.eclipse.eef.ide.ui.internal.properties;
import java.util.ArrayList;
import java.util.List;
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFContainerLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFContainerLifecycleManager.java
new file mode 100644
index 000000000..4dfbf8a4c
--- /dev/null
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFContainerLifecycleManager.java
@@ -0,0 +1,151 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Obeo - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.eef.ide.ui.internal.widgets;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.eef.EEFContainerDescription;
+import org.eclipse.eef.EEFTextDescription;
+import org.eclipse.eef.EEFWidgetDescription;
+import org.eclipse.eef.core.api.IVariableManager;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.sirius.common.interpreter.api.IInterpreter;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage;
+import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory;
+
+/**
+ * This class will handle the lifecycle of the {@link EEFContainerDescription}.
+ *
+ * @author sbegaudeau
+ */
+public class EEFContainerLifecycleManager implements ILifecycleManager {
+
+ /**
+ * The variable manager.
+ */
+ private IVariableManager variableManager;
+
+ /**
+ * The interpreter.
+ */
+ private IInterpreter interpreter;
+
+ /**
+ * The editing domain.
+ */
+ private TransactionalEditingDomain editingDomain;
+
+ /**
+ * The description of the container.
+ */
+ private EEFContainerDescription description;
+
+ /**
+ * The lifecycle managers of the child of the container.
+ */
+ private List<ILifecycleManager> lifecycleManagers = new ArrayList<ILifecycleManager>();
+
+ /**
+ * The constructor.
+ *
+ * @param description
+ * The description of the container
+ * @param variableManager
+ * The variable manager
+ * @param interpreter
+ * The interpreter
+ * @param editingDomain
+ * The editing domain
+ */
+ public EEFContainerLifecycleManager(EEFContainerDescription description, IVariableManager variableManager, IInterpreter interpreter,
+ TransactionalEditingDomain editingDomain) {
+ this.description = description;
+ this.variableManager = variableManager;
+ this.interpreter = interpreter;
+ this.editingDomain = editingDomain;
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.ide.ui.internal.widgets.ILifecycleManager#createControl(org.eclipse.swt.widgets.Composite,
+ * org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage)
+ */
+ @Override
+ public void createControl(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage) {
+ TabbedPropertySheetWidgetFactory widgetFactory = tabbedPropertySheetPage.getWidgetFactory();
+ Composite sectionComposite = widgetFactory.createFlatFormComposite(parent);
+
+ List<EEFWidgetDescription> widgets = this.description.getWidgets();
+ for (EEFWidgetDescription eefWidgetDescription : widgets) {
+ if (eefWidgetDescription instanceof EEFTextDescription) {
+ EEFTextDescription eefTextDescription = (EEFTextDescription) eefWidgetDescription;
+
+ EEFTextLifecycleManager eefTextLifecycleManager = new EEFTextLifecycleManager(eefTextDescription, variableManager.createChild(),
+ interpreter, editingDomain);
+ eefTextLifecycleManager.createControl(sectionComposite, tabbedPropertySheetPage);
+
+ this.lifecycleManagers.add(eefTextLifecycleManager);
+ }
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.ide.ui.internal.widgets.ILifecycleManager#aboutToBeShown()
+ */
+ @Override
+ public void aboutToBeShown() {
+ for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ lifecycleManager.aboutToBeShown();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.ide.ui.internal.widgets.ILifecycleManager#refresh()
+ */
+ @Override
+ public void refresh() {
+ for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ lifecycleManager.refresh();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.ide.ui.internal.widgets.ILifecycleManager#aboutToBeHidden()
+ */
+ @Override
+ public void aboutToBeHidden() {
+ for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ lifecycleManager.aboutToBeHidden();
+ }
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.ide.ui.internal.widgets.ILifecycleManager#dispose()
+ */
+ @Override
+ public void dispose() {
+ for (ILifecycleManager lifecycleManager : lifecycleManagers) {
+ lifecycleManager.dispose();
+ }
+ }
+
+}
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFTextLifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFTextLifecycleManager.java
new file mode 100644
index 000000000..d7a4aa6ff
--- /dev/null
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/EEFTextLifecycleManager.java
@@ -0,0 +1,233 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Obeo - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.eef.ide.ui.internal.widgets;
+
+import org.eclipse.eef.EEFTextDescription;
+import org.eclipse.eef.core.api.IVariableManager;
+import org.eclipse.eef.core.api.controllers.EEFControllersFactory;
+import org.eclipse.eef.core.api.controllers.EEFTextController;
+import org.eclipse.eef.core.api.controllers.IConsumer;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.sirius.common.interpreter.api.IInterpreter;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.custom.CLabel;
+import org.eclipse.swt.events.ModifyEvent;
+import org.eclipse.swt.events.ModifyListener;
+import org.eclipse.swt.layout.FormAttachment;
+import org.eclipse.swt.layout.FormData;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.views.properties.tabbed.ITabbedPropertyConstants;
+import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage;
+import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetWidgetFactory;
+
+/**
+ * This class will be used in order to manager the lifecycle of a text.
+ *
+ * @author sbegaudeau
+ */
+public class EEFTextLifecycleManager implements ILifecycleManager {
+ /**
+ * The description.
+ */
+ private EEFTextDescription description;
+
+ /**
+ * The variable manager.
+ */
+ private IVariableManager variableManager;
+
+ /**
+ * The interpreter.
+ */
+ private IInterpreter interpreter;
+
+ /**
+ * The editing domain.
+ */
+ private TransactionalEditingDomain editingDomain;
+
+ /**
+ * The text.
+ */
+ private Text text;
+
+ /**
+ * The label.
+ */
+ private CLabel label;
+
+ /**
+ * The controller.
+ */
+ private EEFTextController controller;
+
+ /**
+ * The listener on the text.
+ */
+ private ModifyListener modifyListener;
+
+ /**
+ * The constructor.
+ *
+ * @param description
+ * The description
+ * @param variableManager
+ * The variable manager
+ * @param interpreter
+ * The interpreter
+ * @param editingDomain
+ * The editing domain
+ */
+ public EEFTextLifecycleManager(EEFTextDescription description, IVariableManager variableManager, IInterpreter interpreter,
+ TransactionalEditingDomain editingDomain) {
+ this.description = description;
+ this.variableManager = variableManager;
+ this.interpreter = interpreter;
+ this.editingDomain = editingDomain;
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.ide.ui.internal.widgets.ILifecycleManager#createControl(org.eclipse.swt.widgets.Composite,
+ * org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage)
+ */
+ @Override
+ public void createControl(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage) {
+ TabbedPropertySheetWidgetFactory widgetFactory = tabbedPropertySheetPage.getWidgetFactory();
+
+ this.text = this.createText(parent, widgetFactory);
+ this.label = this.createLabel(parent, widgetFactory, this.text);
+
+ this.controller = new EEFControllersFactory().createTextController(this.description, this.variableManager, this.interpreter,
+ this.editingDomain);
+ }
+
+ /**
+ * Creates the text widget.
+ *
+ * @param parent
+ * The composite parent
+ * @param widgetFactory
+ * The widget factory
+ * @return The text widget created
+ */
+ private Text createText(Composite parent, TabbedPropertySheetWidgetFactory widgetFactory) {
+ Text textWidget = widgetFactory.createText(parent, ""); //$NON-NLS-1$
+ FormData data = new FormData();
+
+ final int textOffset = 232;
+ data.left = new FormAttachment(0, textOffset);
+ data.right = new FormAttachment(100, 0);
+ data.top = new FormAttachment(0, ITabbedPropertyConstants.VSPACE);
+
+ textWidget.setLayoutData(data);
+ textWidget.setEnabled(false);
+
+ return textWidget;
+ }
+
+ /**
+ * Creates the label widget.
+ *
+ * @param parent
+ * The composite parent
+ * @param widgetFactory
+ * The widget factory
+ * @param textWidget
+ * The text widget created
+ * @return The label widget created
+ */
+ private CLabel createLabel(Composite parent, TabbedPropertySheetWidgetFactory widgetFactory, Text textWidget) {
+ CLabel labelWidget = widgetFactory.createCLabel(parent, ""); //$NON-NLS-1$
+
+ final int labelOffset = 20;
+ FormData data = new FormData();
+ data.left = new FormAttachment(0, 0);
+ data.right = new FormAttachment(textWidget, -ITabbedPropertyConstants.HSPACE - labelOffset);
+ data.top = new FormAttachment(textWidget, 0, SWT.CENTER);
+ labelWidget.setLayoutData(data);
+
+ return labelWidget;
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.ide.ui.internal.widgets.ILifecycleManager#aboutToBeShown()
+ */
+ @Override
+ public void aboutToBeShown() {
+ this.modifyListener = new ModifyListener() {
+ @Override
+ public void modifyText(ModifyEvent event) {
+ controller.updateValue(text.getText());
+ }
+ };
+ this.text.addModifyListener(this.modifyListener);
+
+ this.controller.onNewValue(new IConsumer<String>() {
+ @Override
+ public void apply(String value) {
+ if (!text.isDisposed() && !(text.getText() != null && text.getText().equals(value))) {
+ text.setText(value);
+ if (!text.isEnabled()) {
+ text.setEnabled(true);
+ }
+ }
+ }
+ });
+
+ this.controller.onNewLabel(new IConsumer<String>() {
+ @Override
+ public void apply(String value) {
+ if (!label.isDisposed() && !(label.getText() != null && label.getText().equals(value))) {
+ label.setText(value);
+ }
+ }
+ });
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.ide.ui.internal.widgets.ILifecycleManager#refresh()
+ */
+ @Override
+ public void refresh() {
+ this.controller.refresh();
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.ide.ui.internal.widgets.ILifecycleManager#aboutToBeHidden()
+ */
+ @Override
+ public void aboutToBeHidden() {
+ if (!text.isDisposed()) {
+ this.text.removeModifyListener(this.modifyListener);
+ }
+ this.controller.removeNewValueConsumer();
+ this.controller.removeNewLabelConsumer();
+ }
+
+ /**
+ * {@inheritDoc}
+ *
+ * @see org.eclipse.eef.ide.ui.internal.widgets.ILifecycleManager#dispose()
+ */
+ @Override
+ public void dispose() {
+ // do nothing
+ }
+}
diff --git a/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/ILifecycleManager.java b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/ILifecycleManager.java
new file mode 100644
index 000000000..2808c665a
--- /dev/null
+++ b/plugins/org.eclipse.eef.ide.ui/src/org/eclipse/eef/ide/ui/internal/widgets/ILifecycleManager.java
@@ -0,0 +1,52 @@
+/*******************************************************************************
+ * Copyright (c) 2015 Obeo.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Obeo - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.eef.ide.ui.internal.widgets;
+
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage;
+
+/**
+ * Implementations of this interface will be used to handle the lifecycle of the widgets and controllers created for a
+ * description.
+ *
+ * @author sbegaudeau
+ */
+public interface ILifecycleManager {
+ /**
+ * Creates the controls for the description.
+ *
+ * @param parent
+ * The composite parent
+ * @param tabbedPropertySheetPage
+ * The tabbed property sheet page
+ */
+ void createControl(Composite parent, TabbedPropertySheetPage tabbedPropertySheetPage);
+
+ /**
+ * Prepares for the widgets to be shown.
+ */
+ void aboutToBeShown();
+
+ /**
+ * Refresh the widgets.
+ */
+ void refresh();
+
+ /**
+ * Prepares for the widgets to be hidden.
+ */
+ void aboutToBeHidden();
+
+ /**
+ * Disposes the content created. The widgets created under the composite will be disposed by SWT already.
+ */
+ void dispose();
+}
diff --git a/plugins/org.eclipse.eef.ide/META-INF/MANIFEST.MF b/plugins/org.eclipse.eef.ide/META-INF/MANIFEST.MF
index 921584b8b..b3f86cfa2 100644
--- a/plugins/org.eclipse.eef.ide/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.eef.ide/META-INF/MANIFEST.MF
@@ -12,7 +12,7 @@ Bundle-ActivationPolicy: lazy
Bundle-Localization: plugin
Import-Package: org.eclipse.eef;version="[2.0.0,3.0.0)",
org.eclipse.eef.api;version="[2.0.0,3.0.0)",
- org.eclipse.eef.interpreter.api;version="[2.0.0,3.0.0)"
+ org.eclipse.sirius.common.interpreter.api;version="[1.0.0,2.0.0)"
Export-Package: org.eclipse.eef.ide.internal;version="2.0.0";x-friends:="org.eclipse.eef.ide.ui",
org.eclipse.eef.ide.internal.extensions;version="2.0.0";x-friends:="org.eclipse.eef.ide.ui",
org.eclipse.eef.ide.internal.extensions.impl;version="2.0.0";x-internal:=true
diff --git a/plugins/org.eclipse.eef.ide/src/org/eclipse/eef/ide/internal/EEFIdePlugin.java b/plugins/org.eclipse.eef.ide/src/org/eclipse/eef/ide/internal/EEFIdePlugin.java
index a3e5ea4b9..91a548af5 100644
--- a/plugins/org.eclipse.eef.ide/src/org/eclipse/eef/ide/internal/EEFIdePlugin.java
+++ b/plugins/org.eclipse.eef.ide/src/org/eclipse/eef/ide/internal/EEFIdePlugin.java
@@ -19,9 +19,9 @@ import org.eclipse.eef.ide.internal.extensions.AbstractRegistryEventListener;
import org.eclipse.eef.ide.internal.extensions.IItemRegistry;
import org.eclipse.eef.ide.internal.extensions.impl.DescriptorRegistryEventListener;
import org.eclipse.eef.ide.internal.extensions.impl.ItemRegistry;
-import org.eclipse.eef.interpreter.api.IInterpreterProvider;
import org.eclipse.emf.common.EMFPlugin;
import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.sirius.common.interpreter.api.IInterpreterProvider;
import org.osgi.framework.BundleContext;
/**
diff --git a/plugins/org.eclipse.eef.interpreter.aql/.checkstyle b/plugins/org.eclipse.eef.interpreter.aql/.checkstyle
deleted file mode 100644
index 121faf77d..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/.checkstyle
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
- <local-check-config name="EEF" location="/org.eclipse.eef.releng/codestyle/EEFCheckstyleConfiguration.xml" type="project" description="">
- <additional-data name="protect-config-file" value="false"/>
- </local-check-config>
- <fileset name="all" enabled="true" check-config-name="EEF" local="true">
- <file-match-pattern match-pattern="." include-pattern="true"/>
- </fileset>
-</fileset-config>
diff --git a/plugins/org.eclipse.eef.interpreter.aql/.classpath b/plugins/org.eclipse.eef.interpreter.aql/.classpath
deleted file mode 100644
index ad32c83a7..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?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.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.eef.interpreter.aql/.project b/plugins/org.eclipse.eef.interpreter.aql/.project
deleted file mode 100644
index 3e05850a5..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.eef.interpreter.aql</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>
- <buildCommand>
- <name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
- </natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.jdt.core.prefs b/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index fb8257839..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,398 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.classpath.outputOverlappingAnotherSource=error
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=error
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=error
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=error
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=error
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=error
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=error
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=warning
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.6
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
-org.eclipse.jdt.core.formatter.comment.line_length=120
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=150
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_on_off_tags=true
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.incompleteClasspath=error
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.jdt.launching.prefs b/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.jdt.launching.prefs
deleted file mode 100644
index 3bb235278..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.jdt.launching.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.launching.PREF_STRICTLY_COMPATIBLE_JRE_NOT_AVAILABLE=ignore
diff --git a/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.jdt.ui.prefs b/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 5f4b3bba4..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,67 +0,0 @@
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_settings_version=12
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=com;java;javax;org;
-org.eclipse.jdt.ui.javadoc=true
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.staticondemandthreshold=99
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="false" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * Return the ${bare_field_name}.\n *\n * @return the ${bare_field_name}\n */</template><template autoinsert\="false" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * Sets the ${bare_field_name}.\n *\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) 2015 Obeo.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n * Obeo - initial API and implementation\n *******************************************************************************/</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * {@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="false" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">AQLInterpreterPlugin.getImplementation().logError(message, e);</template><template autoinsert\="false" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">${body_statement}</template><template autoinsert\="false" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}</template><template autoinsert\="false" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return this.${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
-sp_cleanup.add_default_serial_version_id=false
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_missing_override_annotations_interface_methods=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=false
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_functional_interfaces=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=true
-sp_cleanup.format_source_code=true
-sp_cleanup.format_source_code_changes_only=false
-sp_cleanup.insert_inferred_type_arguments=false
-sp_cleanup.make_local_variable_final=false
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=false
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=false
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=false
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=false
-sp_cleanup.remove_redundant_type_arguments=false
-sp_cleanup.remove_trailing_whitespaces=true
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=true
-sp_cleanup.remove_unused_imports=true
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=false
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=false
-sp_cleanup.remove_unused_private_types=false
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_anonymous_class_creation=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_lambda=false
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=false
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=false
-sp_cleanup.use_type_arguments=false
diff --git a/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.pde.core.prefs b/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.pde.core.prefs
deleted file mode 100644
index 923c37fb8..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.pde.core.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-resolve.requirebundle=false
diff --git a/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.pde.prefs b/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 3112e810d..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,32 +0,0 @@
-compilers.f.unresolved-features=1
-compilers.f.unresolved-plugins=1
-compilers.incompatible-environment=1
-compilers.p.build=1
-compilers.p.build.bin.includes=1
-compilers.p.build.encodings=1
-compilers.p.build.java.compiler=1
-compilers.p.build.java.compliance=1
-compilers.p.build.missing.output=2
-compilers.p.build.output.library=1
-compilers.p.build.source.library=1
-compilers.p.build.src.includes=1
-compilers.p.deprecated=1
-compilers.p.discouraged-class=1
-compilers.p.internal=1
-compilers.p.missing-packages=1
-compilers.p.missing-version-export-package=0
-compilers.p.missing-version-import-package=0
-compilers.p.missing-version-require-bundle=0
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=0
-compilers.p.unknown-attribute=1
-compilers.p.unknown-class=1
-compilers.p.unknown-element=1
-compilers.p.unknown-identifier=1
-compilers.p.unknown-resource=1
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.s.create-docs=false
-compilers.s.doc-folder=doc
-compilers.s.open-tags=1
-eclipse.preferences.version=1
diff --git a/plugins/org.eclipse.eef.interpreter.aql/META-INF/MANIFEST.MF b/plugins/org.eclipse.eef.interpreter.aql/META-INF/MANIFEST.MF
deleted file mode 100644
index ce3725232..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,17 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.eef.interpreter.aql;singleton:=true
-Bundle-Version: 2.0.0.qualifier
-Bundle-Vendor: %providerName
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Bundle-Localization: plugin
-Import-Package: com.google.common.cache;version="[15.0.0,16.0.0)",
- org.eclipse.acceleo.query.runtime;version="[3.6.0,4.0.0)",
- org.eclipse.eef.interpreter.api;version="[2.0.0,3.0.0)"
-Export-Package: org.eclipse.eef.interpreter.aql.internal;version="2.0.0";x-internal:=true
-Bundle-ActivationPolicy: lazy
-Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.7.0,4.0.0)",
- org.eclipse.emf.common;bundle-version="[2.8.0,3.0.0)",
- org.eclipse.emf.ecore;bundle-version="[2.8.0,3.0.0)"
-Bundle-Activator: org.eclipse.eef.interpreter.aql.internal.AQLInterpreterPlugin$Implementation
diff --git a/plugins/org.eclipse.eef.interpreter.aql/about.html b/plugins/org.eclipse.eef.interpreter.aql/about.html
deleted file mode 100644
index f3a55ce5f..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/about.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 15, 2010</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
-</html> \ No newline at end of file
diff --git a/plugins/org.eclipse.eef.interpreter.aql/build.properties b/plugins/org.eclipse.eef.interpreter.aql/build.properties
deleted file mode 100644
index d2b00e513..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/build.properties
+++ /dev/null
@@ -1,15 +0,0 @@
-# Copyright (c) 2015 Obeo.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.htm
-# Contributors: Obeo - initial API and implementation
-
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- plugin.properties,\
- plugin.xml
-javacProjectSettings = true
-additional.bundles = org.eclipse.acceleo.query
diff --git a/plugins/org.eclipse.eef.interpreter.aql/plugin.properties b/plugins/org.eclipse.eef.interpreter.aql/plugin.properties
deleted file mode 100644
index 8ff7fa490..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/plugin.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-# Copyright (c) 2015 Obeo.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.htm
-# Contributors: Obeo - initial API and implementation
-
-pluginName=EEF Interpreter AQL
-providerName=Eclipse Modeling Project
-
-AQLInterpreter_errorCreateAST=An error has occurred while creating the AST of the expression '{0}'.
-AQLInterpreter_errorEvaluation=An error has occurred during the evaluation of the expression '{0}'.
-AQLInterpreter_errorRegistrationService=An error has occurred while trying to register the service class '{0}'. \ No newline at end of file
diff --git a/plugins/org.eclipse.eef.interpreter.aql/plugin.xml b/plugins/org.eclipse.eef.interpreter.aql/plugin.xml
deleted file mode 100644
index 5b541e162..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/plugin.xml
+++ /dev/null
@@ -1,14 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?eclipse version="3.4"?>
-<plugin>
- <extension
- point="org.eclipse.eef.ide.interpreterProvider">
- <descriptor
- class="org.eclipse.eef.interpreter.aql.internal.AQLInterpreterProvider"
- description="The Acceleo Query Language interpreter"
- id="org.eclipse.eef.interpreter.aql"
- label="AQL Interpreter">
- </descriptor>
- </extension>
-
-</plugin>
diff --git a/plugins/org.eclipse.eef.interpreter.aql/pom.xml b/plugins/org.eclipse.eef.interpreter.aql/pom.xml
deleted file mode 100644
index 9e518a4b7..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/pom.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-Copyright (c) 2015 Obeo.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Eclipse Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/epl-v10.html
-
-Contributors:
- Obeo - initial API and implementation
--->
-<project
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.eclipse.eef</groupId>
- <artifactId>org.eclipse.eef.parent</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- <relativePath>../../releng/org.eclipse.eef.releng</relativePath>
- </parent>
-
- <artifactId>org.eclipse.eef.interpreter.aql</artifactId>
- <packaging>eclipse-plugin</packaging>
-
- <name>EEF Interpreter AQL</name>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.eclipse.tycho</groupId>
- <artifactId>tycho-source-plugin</artifactId>
- <version>${tycho-version}</version>
- </plugin>
- </plugins>
- </build>
-</project> \ No newline at end of file
diff --git a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLEvaluationResult.java b/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLEvaluationResult.java
deleted file mode 100644
index 394f90af8..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLEvaluationResult.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.interpreter.aql.internal;
-
-import org.eclipse.eef.interpreter.api.IEvaluationResult;
-import org.eclipse.emf.common.util.Diagnostic;
-
-/**
- * An implementation of the {@link IEvaluationResult}.
- *
- * @author sbegaudeau
- */
-public class AQLEvaluationResult implements IEvaluationResult {
-
- /**
- * The value returned by the evaluation.
- */
- private Object value;
-
- /**
- * The diagnostic of the evaluation.
- */
- private Diagnostic diagnostic;
-
- /**
- * The constructor.
- *
- * @param value
- * The value returned by the evaluation
- * @param diagnostic
- * The diagnostic of the evaluation
- */
- public AQLEvaluationResult(Object value, Diagnostic diagnostic) {
- this.value = value;
- this.diagnostic = diagnostic;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.interpreter.api.IEvaluationResult#getValue()
- */
- @Override
- public Object getValue() {
- return this.value;
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.interpreter.api.IEvaluationResult#getDiagnostic()
- */
- @Override
- public Diagnostic getDiagnostic() {
- return this.diagnostic;
- }
-
-}
diff --git a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLInterpreter.java b/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLInterpreter.java
deleted file mode 100644
index 5d2c12300..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLInterpreter.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.interpreter.aql.internal;
-
-import com.google.common.cache.CacheBuilder;
-import com.google.common.cache.CacheLoader;
-import com.google.common.cache.LoadingCache;
-
-import java.text.MessageFormat;
-import java.util.Map;
-import java.util.concurrent.ExecutionException;
-
-import org.eclipse.acceleo.query.runtime.EvaluationResult;
-import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine;
-import org.eclipse.acceleo.query.runtime.IQueryBuilderEngine.AstResult;
-import org.eclipse.acceleo.query.runtime.IQueryEnvironment;
-import org.eclipse.acceleo.query.runtime.IQueryEvaluationEngine;
-import org.eclipse.acceleo.query.runtime.InvalidAcceleoPackageException;
-import org.eclipse.acceleo.query.runtime.Query;
-import org.eclipse.acceleo.query.runtime.QueryEvaluation;
-import org.eclipse.acceleo.query.runtime.QueryParsing;
-import org.eclipse.eef.interpreter.api.IEvaluationResult;
-import org.eclipse.eef.interpreter.api.IInterpreter;
-import org.eclipse.emf.common.util.BasicDiagnostic;
-import org.eclipse.emf.common.util.Diagnostic;
-import org.eclipse.emf.ecore.EcorePackage;
-import org.eclipse.emf.ecore.impl.EStringToStringMapEntryImpl;
-
-/**
- * The AQL {@link IInterpreter}.
- *
- * @author sbegaudeau
- */
-public class AQLInterpreter implements IInterpreter {
-
- /**
- * The query environment.
- */
- private IQueryEnvironment queryEnvironment;
-
- /**
- * The cache of the expressions parsed.
- */
- private LoadingCache<String, AstResult> parsedExpressions;
-
- /**
- * The constructor.
- */
- public AQLInterpreter() {
- this.queryEnvironment = Query.newEnvironmentWithDefaultServices(null);
- this.queryEnvironment.registerEPackage(EcorePackage.eINSTANCE);
- this.queryEnvironment.registerCustomClassMapping(EcorePackage.eINSTANCE.getEStringToStringMapEntry(), EStringToStringMapEntryImpl.class);
- try {
- this.queryEnvironment.registerServicePackage(DefaultEEFServices.class);
- } catch (InvalidAcceleoPackageException e) {
- String message = MessageFormat.format(Messages.AQLInterpreter_errorRegistrationService, DefaultEEFServices.class.getSimpleName());
- AQLInterpreterPlugin.getImplementation().logError(message, e);
- }
- this.initExpressionsCache();
- }
-
- /**
- * Initialize the expression cache.
- */
- private void initExpressionsCache() {
- final IQueryBuilderEngine builder = QueryParsing.newBuilder(queryEnvironment);
- final int cacheSize = 500;
- this.parsedExpressions = CacheBuilder.newBuilder().maximumSize(cacheSize).build(new CacheLoader<String, AstResult>() {
-
- @Override
- public AstResult load(String key) throws Exception {
- return builder.build(key);
- }
-
- });
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.interpreter.api.IInterpreter#evaluateExpression(java.util.Map, java.lang.String)
- */
- @Override
- public IEvaluationResult evaluateExpression(Map<String, Object> variables, String expressionBody) {
- String body = expressionBody.substring(IAQLConstants.AQL_PREFIX.length());
- try {
- AstResult astResult = this.parsedExpressions.get(body);
- IQueryEvaluationEngine evaluationEngine = QueryEvaluation.newEngine(queryEnvironment);
- final EvaluationResult evalResult = evaluationEngine.eval(astResult, variables);
- return new AQLEvaluationResult(evalResult.getResult(), evalResult.getDiagnostic());
- } catch (ExecutionException e) {
- String message = MessageFormat.format(Messages.AQLInterpreter_errorCreateAST, body);
- AQLInterpreterPlugin.getImplementation().logError(message, e);
- }
- String message = MessageFormat.format(Messages.AQLInterpreter_errorEvaluation, body);
- Diagnostic error = new BasicDiagnostic(Diagnostic.ERROR, AQLInterpreterPlugin.PLUGIN_ID, 0, message, new Object[0]);
- return new AQLEvaluationResult(null, error);
- }
-
-}
diff --git a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLInterpreterPlugin.java b/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLInterpreterPlugin.java
deleted file mode 100644
index e30bfc50e..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLInterpreterPlugin.java
+++ /dev/null
@@ -1,107 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.interpreter.aql.internal;
-
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Status;
-import org.eclipse.emf.common.EMFPlugin;
-import org.eclipse.emf.common.util.ResourceLocator;
-
-/**
- * The plugin class of the bundle.
- *
- * @author sbegaudeau
- */
-public class AQLInterpreterPlugin extends EMFPlugin {
- /**
- * The identifier of the plugin.
- */
- public static final String PLUGIN_ID = "org.eclipse.eef.interpreter.aql"; //$NON-NLS-1$
-
- /**
- * The sole instance of the plugin.
- */
- public static final AQLInterpreterPlugin INSTANCE = new AQLInterpreterPlugin();
-
- /**
- * The OSGi related implementation of the plugin.
- */
- private static Implementation plugin;
-
- /**
- * The constructor.
- */
- public AQLInterpreterPlugin() {
- super(new ResourceLocator[0]);
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.emf.common.EMFPlugin#getPluginResourceLocator()
- */
- @Override
- public ResourceLocator getPluginResourceLocator() {
- return plugin;
- }
-
- /**
- * Returns the OSGi related implementation.
- *
- * @return The OSGi related implementation
- */
- public static Implementation getImplementation() {
- return plugin;
- }
-
- /**
- * This class isused as the bundle activator of the plugin.
- *
- * @author sbegaudeau
- */
- public static class Implementation extends EclipsePlugin {
-
- /**
- * The constructor.
- */
- public Implementation() {
- super();
-
- AQLInterpreterPlugin.plugin = this;
- }
-
- /**
- * Logs an error with the exception and the given message.
- *
- * @param message
- * The message
- * @param exception
- * The exception
- */
- public void logError(String message, Exception exception) {
- IStatus status = new Status(IStatus.ERROR, PLUGIN_ID, message, exception);
- this.getLog().log(status);
- }
-
- /**
- * Logs a warning with the exception and the given message.
- *
- * @param message
- * The message
- * @param exception
- * The exception
- */
- public void logWarning(String message, Exception exception) {
- IStatus status = new Status(IStatus.WARNING, PLUGIN_ID, message, exception);
- this.getLog().log(status);
- }
- }
-}
diff --git a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLInterpreterProvider.java b/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLInterpreterProvider.java
deleted file mode 100644
index cfc822bf6..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/AQLInterpreterProvider.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.interpreter.aql.internal;
-
-import org.eclipse.eef.interpreter.api.IInterpreter;
-import org.eclipse.eef.interpreter.api.IInterpreterProvider;
-
-/**
- * The AQL {@link IInterpreterProvider}.
- *
- * @author sbegaudeau
- */
-public class AQLInterpreterProvider implements IInterpreterProvider {
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.interpreter.api.IInterpreterProvider#canHandle(java.lang.String)
- */
- @Override
- public boolean canHandle(String expression) {
- return expression != null && expression.startsWith(IAQLConstants.AQL_PREFIX);
- }
-
- /**
- * {@inheritDoc}
- *
- * @see org.eclipse.eef.interpreter.api.IInterpreterProvider#createInterpreter()
- */
- @Override
- public IInterpreter createInterpreter() {
- return new AQLInterpreter();
- }
-
-}
diff --git a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/DefaultEEFServices.java b/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/DefaultEEFServices.java
deleted file mode 100644
index 715d80fa6..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/DefaultEEFServices.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.interpreter.aql.internal;
-
-import java.util.Collection;
-
-import org.eclipse.emf.ecore.EObject;
-import org.eclipse.emf.ecore.EStructuralFeature;
-
-/**
- * This class contains all the default services for EEF.
- *
- * @author sbegaudeau
- */
-public class DefaultEEFServices {
- /**
- * Sets the value of the given feature of the object to the new value.
- *
- * @param eObject
- * The current EObject
- * @param eStructuralFeatureName
- * The name of the {@link EStructuralFeature}
- * @param value
- * The new value
- * @return The current EObject
- */
- public EObject eSet(EObject eObject, String eStructuralFeatureName, Object value) {
- EStructuralFeature eStructuralFeature = eObject.eClass().getEStructuralFeature(eStructuralFeatureName);
- if (eStructuralFeature.getUpperBound() == -1 || eStructuralFeature.getUpperBound() > 1) {
- Object currentValue = eObject.eGet(eStructuralFeature);
- if (currentValue instanceof Collection<?>) {
- @SuppressWarnings("unchecked")
- Collection<Object> collection = (Collection<Object>) currentValue;
- collection.add(value);
- }
- } else {
- eObject.eSetDeliver(true);
- eObject.eSet(eStructuralFeature, value);
- }
- return eObject;
- }
-}
diff --git a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/I18N.java b/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/I18N.java
deleted file mode 100644
index 7932f5d9a..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/I18N.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.interpreter.aql.internal;
-
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-import java.lang.reflect.Field;
-import java.lang.reflect.Modifier;
-import java.security.AccessController;
-import java.security.PrivilegedAction;
-
-import org.eclipse.emf.common.EMFPlugin;
-
-/**
- * Helper class with bundle-independent code, that can be reused by other I18N classes local to each plug-in.
- *
- * @author pcdavid
- */
-public final class I18N {
- /**
- * Used to mark a {@code public static String} field of a class as an externalized string, whose actual value will
- * depend on the locale used at runtime. The optional value corresponds to the key in the {@code ResourceLocator};
- * if absent, the name of the field itself is used as key.
- *
- * @author pcdavid
- */
- @Retention(RetentionPolicy.RUNTIME)
- @Target(ElementType.FIELD)
- public @interface TranslatableMessage {
- /**
- * The (optional) value of the message key. If absent, the key is assumed to be the same as the Java field's
- * name.
- */
- String[] value() default {};
- }
-
- /**
- * The constructor.
- */
- private I18N() {
- // Prevent instantiation
- }
-
- /**
- * Initializes the value of a class's {@code TranslatableMessage}s using the specified plugin as
- * {@code ResourceLocator}.
- *
- * @param messagesClass
- * the class which defines the fields to initialize.
- * @param plugin
- * the plugin from which to obtain the localized value of the fields.
- */
- public static void initializeMessages(final Class<?> messagesClass, final EMFPlugin plugin) {
- if (System.getSecurityManager() == null) {
- load(plugin, messagesClass);
- return;
- }
- AccessController.doPrivileged(new PrivilegedAction<Void>() {
- @Override
- public Void run() {
- load(plugin, messagesClass);
- return null;
- }
- });
- }
-
- /**
- * Loads the message class with the given {@link EMFPlugin}.
- *
- * @param plugin
- * The plugin
- * @param messagesClass
- * The message class
- */
- private static void load(EMFPlugin plugin, Class<?> messagesClass) {
- for (Field field : messagesClass.getDeclaredFields()) {
- if (isMessageField(field)) {
- initialize(field, plugin);
- }
- }
- }
-
- /**
- * Indicates if the given field is a message field.
- *
- * @param field
- * The field
- * @return <code>true</code> if the given field is a message field, <code>false</code> otherwise.
- */
- private static boolean isMessageField(Field field) {
- int mods = field.getModifiers();
- boolean modsOK = Modifier.isPublic(mods) && Modifier.isStatic(mods) && !Modifier.isFinal(mods);
- return modsOK && field.isAnnotationPresent(I18N.TranslatableMessage.class) && field.getType() == String.class;
- }
-
- /**
- * Initializes the given field used the plugin.
- *
- * @param field
- * The field to initialize
- * @param plugin
- * The plugin
- */
- private static void initialize(Field field, EMFPlugin plugin) {
- String key = getKey(field);
- String value = plugin.getString(key);
- if (!field.isAccessible()) {
- field.setAccessible(true);
- }
- try {
- field.set(null, value);
- } catch (IllegalArgumentException e) {
- plugin.log(e);
- } catch (IllegalAccessException e) {
- plugin.log(e);
- }
- }
-
- /**
- * Returns the key for the given field.
- *
- * @param field
- * The field
- * @return The key of the field
- */
- private static String getKey(Field field) {
- I18N.TranslatableMessage annot = field.getAnnotation(I18N.TranslatableMessage.class);
- String[] key = annot.value();
- if (key == null || key.length == 0) {
- key = new String[] { field.getName() };
- }
- return key[0];
- }
-}
diff --git a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/IAQLConstants.java b/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/IAQLConstants.java
deleted file mode 100644
index bdbcdf8f6..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/IAQLConstants.java
+++ /dev/null
@@ -1,23 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.interpreter.aql.internal;
-
-/**
- * Utility interface holding constants.
- *
- * @author sbegaudeau
- */
-public interface IAQLConstants {
- /**
- * The AQL prefix.
- */
- String AQL_PREFIX = "aql:"; //$NON-NLS-1$
-}
diff --git a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/Messages.java b/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/Messages.java
deleted file mode 100644
index 863ceb51e..000000000
--- a/plugins/org.eclipse.eef.interpreter.aql/src/org/eclipse/eef/interpreter/aql/internal/Messages.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.interpreter.aql.internal;
-
-import org.eclipse.eef.interpreter.aql.internal.I18N.TranslatableMessage;
-
-/**
- * Utility class used to hold the messages of the bundle.
- *
- * @author sbegaudeau
- */
-public final class Messages {
-
- static {
- I18N.initializeMessages(Messages.class, AQLInterpreterPlugin.INSTANCE);
- }
-
- // CHECKSTYLE:OFF
-
- @TranslatableMessage
- public static String AQLInterpreter_errorCreateAST;
-
- @TranslatableMessage
- public static String AQLInterpreter_errorEvaluation;
-
- @TranslatableMessage
- public static String AQLInterpreter_errorRegistrationService;
-
- // CHECKSTYLE:ON
-
- /**
- * The constructor.
- */
- private Messages() {
- // Prevents instantiation
- }
-}
diff --git a/plugins/org.eclipse.eef.interpreter/.checkstyle b/plugins/org.eclipse.eef.interpreter/.checkstyle
deleted file mode 100644
index 121faf77d..000000000
--- a/plugins/org.eclipse.eef.interpreter/.checkstyle
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<fileset-config file-format-version="1.2.0" simple-config="true" sync-formatter="false">
- <local-check-config name="EEF" location="/org.eclipse.eef.releng/codestyle/EEFCheckstyleConfiguration.xml" type="project" description="">
- <additional-data name="protect-config-file" value="false"/>
- </local-check-config>
- <fileset name="all" enabled="true" check-config-name="EEF" local="true">
- <file-match-pattern match-pattern="." include-pattern="true"/>
- </fileset>
-</fileset-config>
diff --git a/plugins/org.eclipse.eef.interpreter/.classpath b/plugins/org.eclipse.eef.interpreter/.classpath
deleted file mode 100644
index ad32c83a7..000000000
--- a/plugins/org.eclipse.eef.interpreter/.classpath
+++ /dev/null
@@ -1,7 +0,0 @@
-<?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.6"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="output" path="bin"/>
-</classpath>
diff --git a/plugins/org.eclipse.eef.interpreter/.project b/plugins/org.eclipse.eef.interpreter/.project
deleted file mode 100644
index 7c045513b..000000000
--- a/plugins/org.eclipse.eef.interpreter/.project
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
- <name>org.eclipse.eef.interpreter</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>
- <buildCommand>
- <name>net.sf.eclipsecs.core.CheckstyleBuilder</name>
- <arguments>
- </arguments>
- </buildCommand>
- </buildSpec>
- <natures>
- <nature>org.eclipse.pde.PluginNature</nature>
- <nature>org.eclipse.jdt.core.javanature</nature>
- <nature>net.sf.eclipsecs.core.CheckstyleNature</nature>
- </natures>
-</projectDescription>
diff --git a/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.jdt.core.prefs b/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.jdt.core.prefs
deleted file mode 100644
index fb8257839..000000000
--- a/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.jdt.core.prefs
+++ /dev/null
@@ -1,398 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.core.builder.cleanOutputFolder=clean
-org.eclipse.jdt.core.builder.duplicateResourceTask=warning
-org.eclipse.jdt.core.builder.invalidClasspath=abort
-org.eclipse.jdt.core.builder.recreateModifiedClassFileInOutputFolder=ignore
-org.eclipse.jdt.core.builder.resourceCopyExclusionFilter=
-org.eclipse.jdt.core.circularClasspath=error
-org.eclipse.jdt.core.classpath.exclusionPatterns=enabled
-org.eclipse.jdt.core.classpath.multipleOutputLocations=enabled
-org.eclipse.jdt.core.classpath.outputOverlappingAnotherSource=error
-org.eclipse.jdt.core.compiler.annotation.inheritNullAnnotations=disabled
-org.eclipse.jdt.core.compiler.annotation.missingNonNullByDefaultAnnotation=ignore
-org.eclipse.jdt.core.compiler.annotation.nonnull=org.eclipse.jdt.annotation.NonNull
-org.eclipse.jdt.core.compiler.annotation.nonnullbydefault=org.eclipse.jdt.annotation.NonNullByDefault
-org.eclipse.jdt.core.compiler.annotation.nullable=org.eclipse.jdt.annotation.Nullable
-org.eclipse.jdt.core.compiler.annotation.nullanalysis=disabled
-org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
-org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
-org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.6
-org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
-org.eclipse.jdt.core.compiler.debug.lineNumber=generate
-org.eclipse.jdt.core.compiler.debug.localVariable=generate
-org.eclipse.jdt.core.compiler.debug.sourceFile=generate
-org.eclipse.jdt.core.compiler.maxProblemPerUnit=100
-org.eclipse.jdt.core.compiler.problem.annotationSuperInterface=warning
-org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
-org.eclipse.jdt.core.compiler.problem.autoboxing=ignore
-org.eclipse.jdt.core.compiler.problem.comparingIdentical=warning
-org.eclipse.jdt.core.compiler.problem.deadCode=warning
-org.eclipse.jdt.core.compiler.problem.deprecation=warning
-org.eclipse.jdt.core.compiler.problem.deprecationInDeprecatedCode=disabled
-org.eclipse.jdt.core.compiler.problem.deprecationWhenOverridingDeprecatedMethod=disabled
-org.eclipse.jdt.core.compiler.problem.discouragedReference=warning
-org.eclipse.jdt.core.compiler.problem.emptyStatement=error
-org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
-org.eclipse.jdt.core.compiler.problem.explicitlyClosedAutoCloseable=ignore
-org.eclipse.jdt.core.compiler.problem.fallthroughCase=error
-org.eclipse.jdt.core.compiler.problem.fatalOptionalError=disabled
-org.eclipse.jdt.core.compiler.problem.fieldHiding=warning
-org.eclipse.jdt.core.compiler.problem.finalParameterBound=warning
-org.eclipse.jdt.core.compiler.problem.finallyBlockNotCompletingNormally=warning
-org.eclipse.jdt.core.compiler.problem.forbiddenReference=error
-org.eclipse.jdt.core.compiler.problem.hiddenCatchBlock=warning
-org.eclipse.jdt.core.compiler.problem.includeNullInfoFromAsserts=disabled
-org.eclipse.jdt.core.compiler.problem.incompatibleNonInheritedInterfaceMethod=warning
-org.eclipse.jdt.core.compiler.problem.incompleteEnumSwitch=error
-org.eclipse.jdt.core.compiler.problem.indirectStaticAccess=ignore
-org.eclipse.jdt.core.compiler.problem.localVariableHiding=warning
-org.eclipse.jdt.core.compiler.problem.methodWithConstructorName=warning
-org.eclipse.jdt.core.compiler.problem.missingDefaultCase=error
-org.eclipse.jdt.core.compiler.problem.missingDeprecatedAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingEnumCaseDespiteDefault=disabled
-org.eclipse.jdt.core.compiler.problem.missingHashCodeMethod=error
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotation=ignore
-org.eclipse.jdt.core.compiler.problem.missingOverrideAnnotationForInterfaceMethodImplementation=enabled
-org.eclipse.jdt.core.compiler.problem.missingSerialVersion=warning
-org.eclipse.jdt.core.compiler.problem.missingSynchronizedOnInheritedMethod=ignore
-org.eclipse.jdt.core.compiler.problem.noEffectAssignment=warning
-org.eclipse.jdt.core.compiler.problem.noImplicitStringConversion=warning
-org.eclipse.jdt.core.compiler.problem.nonExternalizedStringLiteral=error
-org.eclipse.jdt.core.compiler.problem.nonnullParameterAnnotationDropped=warning
-org.eclipse.jdt.core.compiler.problem.nullAnnotationInferenceConflict=error
-org.eclipse.jdt.core.compiler.problem.nullReference=warning
-org.eclipse.jdt.core.compiler.problem.nullSpecViolation=error
-org.eclipse.jdt.core.compiler.problem.nullUncheckedConversion=warning
-org.eclipse.jdt.core.compiler.problem.overridingPackageDefaultMethod=warning
-org.eclipse.jdt.core.compiler.problem.parameterAssignment=error
-org.eclipse.jdt.core.compiler.problem.possibleAccidentalBooleanAssignment=warning
-org.eclipse.jdt.core.compiler.problem.potentialNullReference=warning
-org.eclipse.jdt.core.compiler.problem.potentiallyUnclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.rawTypeReference=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullAnnotation=warning
-org.eclipse.jdt.core.compiler.problem.redundantNullCheck=warning
-org.eclipse.jdt.core.compiler.problem.redundantSpecificationOfTypeArguments=ignore
-org.eclipse.jdt.core.compiler.problem.redundantSuperinterface=warning
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBePotentiallyStatic=ignore
-org.eclipse.jdt.core.compiler.problem.reportMethodCanBeStatic=ignore
-org.eclipse.jdt.core.compiler.problem.specialParameterHidingField=disabled
-org.eclipse.jdt.core.compiler.problem.staticAccessReceiver=warning
-org.eclipse.jdt.core.compiler.problem.suppressOptionalErrors=disabled
-org.eclipse.jdt.core.compiler.problem.suppressWarnings=enabled
-org.eclipse.jdt.core.compiler.problem.syntacticNullAnalysisForFields=disabled
-org.eclipse.jdt.core.compiler.problem.syntheticAccessEmulation=ignore
-org.eclipse.jdt.core.compiler.problem.typeParameterHiding=warning
-org.eclipse.jdt.core.compiler.problem.unavoidableGenericTypeProblems=enabled
-org.eclipse.jdt.core.compiler.problem.uncheckedTypeOperation=warning
-org.eclipse.jdt.core.compiler.problem.unclosedCloseable=warning
-org.eclipse.jdt.core.compiler.problem.undocumentedEmptyBlock=warning
-org.eclipse.jdt.core.compiler.problem.unhandledWarningToken=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryElse=ignore
-org.eclipse.jdt.core.compiler.problem.unnecessaryTypeCheck=warning
-org.eclipse.jdt.core.compiler.problem.unqualifiedFieldAccess=ignore
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownException=warning
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionExemptExceptionAndThrowable=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedDeclaredThrownExceptionWhenOverriding=disabled
-org.eclipse.jdt.core.compiler.problem.unusedExceptionParameter=warning
-org.eclipse.jdt.core.compiler.problem.unusedImport=warning
-org.eclipse.jdt.core.compiler.problem.unusedLabel=warning
-org.eclipse.jdt.core.compiler.problem.unusedLocal=warning
-org.eclipse.jdt.core.compiler.problem.unusedObjectAllocation=warning
-org.eclipse.jdt.core.compiler.problem.unusedParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedParameterIncludeDocCommentReference=enabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenImplementingAbstract=disabled
-org.eclipse.jdt.core.compiler.problem.unusedParameterWhenOverridingConcrete=disabled
-org.eclipse.jdt.core.compiler.problem.unusedPrivateMember=warning
-org.eclipse.jdt.core.compiler.problem.unusedTypeParameter=ignore
-org.eclipse.jdt.core.compiler.problem.unusedWarningToken=warning
-org.eclipse.jdt.core.compiler.problem.varargsArgumentNeedCast=warning
-org.eclipse.jdt.core.compiler.source=1.6
-org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_assignment=0
-org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
-org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
-org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
-org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
-org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
-org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
-org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
-org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
-org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
-org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
-org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_after_package=1
-org.eclipse.jdt.core.formatter.blank_lines_before_field=0
-org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
-org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
-org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
-org.eclipse.jdt.core.formatter.blank_lines_before_method=1
-org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
-org.eclipse.jdt.core.formatter.blank_lines_before_package=0
-org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
-org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
-org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
-org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
-org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
-org.eclipse.jdt.core.formatter.comment.format_block_comments=true
-org.eclipse.jdt.core.formatter.comment.format_header=false
-org.eclipse.jdt.core.formatter.comment.format_html=true
-org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
-org.eclipse.jdt.core.formatter.comment.format_line_comments=true
-org.eclipse.jdt.core.formatter.comment.format_source_code=true
-org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
-org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
-org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
-org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
-org.eclipse.jdt.core.formatter.comment.line_length=120
-org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
-org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
-org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
-org.eclipse.jdt.core.formatter.compact_else_if=true
-org.eclipse.jdt.core.formatter.continuation_indentation=2
-org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
-org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
-org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
-org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
-org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
-org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
-org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_empty_lines=false
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
-org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
-org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
-org.eclipse.jdt.core.formatter.indentation.size=4
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
-org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
-org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
-org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
-org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
-org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
-org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
-org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
-org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
-org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
-org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
-org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
-org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
-org.eclipse.jdt.core.formatter.join_lines_in_comments=true
-org.eclipse.jdt.core.formatter.join_wrapped_lines=true
-org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
-org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
-org.eclipse.jdt.core.formatter.lineSplit=150
-org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
-org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
-org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
-org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
-org.eclipse.jdt.core.formatter.tabulation.char=tab
-org.eclipse.jdt.core.formatter.tabulation.size=4
-org.eclipse.jdt.core.formatter.use_on_off_tags=true
-org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
-org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
-org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
-org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
-org.eclipse.jdt.core.incompatibleJDKLevel=ignore
-org.eclipse.jdt.core.incompleteClasspath=error
-org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.jdt.launching.prefs b/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.jdt.launching.prefs
deleted file mode 100644
index 3bb235278..000000000
--- a/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.jdt.launching.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-org.eclipse.jdt.launching.PREF_STRICTLY_COMPATIBLE_JRE_NOT_AVAILABLE=ignore
diff --git a/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.jdt.ui.prefs b/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.jdt.ui.prefs
deleted file mode 100644
index 43ccc83c4..000000000
--- a/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.jdt.ui.prefs
+++ /dev/null
@@ -1,67 +0,0 @@
-eclipse.preferences.version=1
-editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
-formatter_settings_version=12
-org.eclipse.jdt.ui.ignorelowercasenames=true
-org.eclipse.jdt.ui.importorder=com;java;javax;org;
-org.eclipse.jdt.ui.javadoc=true
-org.eclipse.jdt.ui.ondemandthreshold=99
-org.eclipse.jdt.ui.staticondemandthreshold=99
-org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="false" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * Return the ${bare_field_name}.\n *\n * @return the ${bare_field_name}\n */</template><template autoinsert\="false" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * Sets the ${bare_field_name}.\n *\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*******************************************************************************\n * Copyright (c) 2015 Obeo.\n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\n *\n * Contributors\:\n * Obeo - initial API and implementation\n *******************************************************************************/</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * {@inheritDoc}\n *\n * ${see_to_overridden}\n */</template><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${tags}\n * ${see_to_target}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="false" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">EEFInterpreterPlugin.getImplementation().logError(message, e);</template><template autoinsert\="false" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">${body_statement}</template><template autoinsert\="false" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}</template><template autoinsert\="false" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return this.${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
-sp_cleanup.add_default_serial_version_id=false
-sp_cleanup.add_generated_serial_version_id=false
-sp_cleanup.add_missing_annotations=true
-sp_cleanup.add_missing_deprecated_annotations=true
-sp_cleanup.add_missing_methods=false
-sp_cleanup.add_missing_nls_tags=false
-sp_cleanup.add_missing_override_annotations=true
-sp_cleanup.add_missing_override_annotations_interface_methods=true
-sp_cleanup.add_serial_version_id=false
-sp_cleanup.always_use_blocks=false
-sp_cleanup.always_use_parentheses_in_expressions=false
-sp_cleanup.always_use_this_for_non_static_field_access=false
-sp_cleanup.always_use_this_for_non_static_method_access=false
-sp_cleanup.convert_functional_interfaces=false
-sp_cleanup.convert_to_enhanced_for_loop=false
-sp_cleanup.correct_indentation=true
-sp_cleanup.format_source_code=true
-sp_cleanup.format_source_code_changes_only=false
-sp_cleanup.insert_inferred_type_arguments=false
-sp_cleanup.make_local_variable_final=false
-sp_cleanup.make_parameters_final=false
-sp_cleanup.make_private_fields_final=false
-sp_cleanup.make_type_abstract_if_missing_method=false
-sp_cleanup.make_variable_declarations_final=false
-sp_cleanup.never_use_blocks=false
-sp_cleanup.never_use_parentheses_in_expressions=false
-sp_cleanup.on_save_use_additional_actions=true
-sp_cleanup.organize_imports=true
-sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=false
-sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
-sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
-sp_cleanup.remove_private_constructors=false
-sp_cleanup.remove_redundant_type_arguments=false
-sp_cleanup.remove_trailing_whitespaces=true
-sp_cleanup.remove_trailing_whitespaces_all=true
-sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
-sp_cleanup.remove_unnecessary_casts=true
-sp_cleanup.remove_unnecessary_nls_tags=true
-sp_cleanup.remove_unused_imports=true
-sp_cleanup.remove_unused_local_variables=false
-sp_cleanup.remove_unused_private_fields=false
-sp_cleanup.remove_unused_private_members=false
-sp_cleanup.remove_unused_private_methods=false
-sp_cleanup.remove_unused_private_types=false
-sp_cleanup.sort_members=false
-sp_cleanup.sort_members_all=false
-sp_cleanup.use_anonymous_class_creation=false
-sp_cleanup.use_blocks=false
-sp_cleanup.use_blocks_only_for_return_and_throw=false
-sp_cleanup.use_lambda=false
-sp_cleanup.use_parentheses_in_expressions=false
-sp_cleanup.use_this_for_non_static_field_access=false
-sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=false
-sp_cleanup.use_this_for_non_static_method_access=false
-sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=false
-sp_cleanup.use_type_arguments=false
diff --git a/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.pde.core.prefs b/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.pde.core.prefs
deleted file mode 100644
index 923c37fb8..000000000
--- a/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.pde.core.prefs
+++ /dev/null
@@ -1,2 +0,0 @@
-eclipse.preferences.version=1
-resolve.requirebundle=false
diff --git a/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.pde.prefs b/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.pde.prefs
deleted file mode 100644
index 3112e810d..000000000
--- a/plugins/org.eclipse.eef.interpreter/.settings/org.eclipse.pde.prefs
+++ /dev/null
@@ -1,32 +0,0 @@
-compilers.f.unresolved-features=1
-compilers.f.unresolved-plugins=1
-compilers.incompatible-environment=1
-compilers.p.build=1
-compilers.p.build.bin.includes=1
-compilers.p.build.encodings=1
-compilers.p.build.java.compiler=1
-compilers.p.build.java.compliance=1
-compilers.p.build.missing.output=2
-compilers.p.build.output.library=1
-compilers.p.build.source.library=1
-compilers.p.build.src.includes=1
-compilers.p.deprecated=1
-compilers.p.discouraged-class=1
-compilers.p.internal=1
-compilers.p.missing-packages=1
-compilers.p.missing-version-export-package=0
-compilers.p.missing-version-import-package=0
-compilers.p.missing-version-require-bundle=0
-compilers.p.no-required-att=0
-compilers.p.not-externalized-att=0
-compilers.p.unknown-attribute=1
-compilers.p.unknown-class=1
-compilers.p.unknown-element=1
-compilers.p.unknown-identifier=1
-compilers.p.unknown-resource=1
-compilers.p.unresolved-ex-points=0
-compilers.p.unresolved-import=0
-compilers.s.create-docs=false
-compilers.s.doc-folder=doc
-compilers.s.open-tags=1
-eclipse.preferences.version=1
diff --git a/plugins/org.eclipse.eef.interpreter/META-INF/MANIFEST.MF b/plugins/org.eclipse.eef.interpreter/META-INF/MANIFEST.MF
deleted file mode 100644
index 80878e8c4..000000000
--- a/plugins/org.eclipse.eef.interpreter/META-INF/MANIFEST.MF
+++ /dev/null
@@ -1,10 +0,0 @@
-Manifest-Version: 1.0
-Bundle-ManifestVersion: 2
-Bundle-Name: %pluginName
-Bundle-SymbolicName: org.eclipse.eef.interpreter
-Bundle-Version: 2.0.0.qualifier
-Bundle-Vendor: %providerName
-Bundle-RequiredExecutionEnvironment: JavaSE-1.6
-Require-Bundle: org.eclipse.emf.common;bundle-version="[2.8.0,3.0.0)"
-Export-Package: org.eclipse.eef.interpreter.api;version="2.0.0"
-Bundle-Localization: plugin
diff --git a/plugins/org.eclipse.eef.interpreter/about.html b/plugins/org.eclipse.eef.interpreter/about.html
deleted file mode 100644
index f3a55ce5f..000000000
--- a/plugins/org.eclipse.eef.interpreter/about.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
-<html xmlns="http://www.w3.org/1999/xhtml">
-<head>
-<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
-<title>About</title>
-</head>
-<body lang="EN-US">
-<h2>About This Content</h2>
-
-<p>June 15, 2010</p>
-<h3>License</h3>
-
-<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;). Unless otherwise
-indicated below, the Content is provided to you under the terms and conditions of the
-Eclipse Public License Version 1.0 (&quot;EPL&quot;). A copy of the EPL is available
-at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
-For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
-
-<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is
-being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
-apply to your use of any object code in the Content. Check the Redistributor's license that was
-provided with the Content. If no such license exists, contact the Redistributor. Unless otherwise
-indicated below, the terms and conditions of the EPL still apply to any source code in the Content
-and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
-
-</body>
-</html> \ No newline at end of file
diff --git a/plugins/org.eclipse.eef.interpreter/build.properties b/plugins/org.eclipse.eef.interpreter/build.properties
deleted file mode 100644
index eac95d0ab..000000000
--- a/plugins/org.eclipse.eef.interpreter/build.properties
+++ /dev/null
@@ -1,13 +0,0 @@
-# Copyright (c) 2015 Obeo.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.htm
-# Contributors: Obeo - initial API and implementation
-
-source.. = src/
-output.. = bin/
-bin.includes = META-INF/,\
- .,\
- plugin.properties
-javacProjectSettings = true
diff --git a/plugins/org.eclipse.eef.interpreter/plugin.properties b/plugins/org.eclipse.eef.interpreter/plugin.properties
deleted file mode 100644
index d349c5863..000000000
--- a/plugins/org.eclipse.eef.interpreter/plugin.properties
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright (c) 2015 Obeo.
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Eclipse Public License v1.0
-# which accompanies this distribution, and is available at
-# http://www.eclipse.org/legal/epl-v10.htm
-# Contributors: Obeo - initial API and implementation
-
-pluginName=EEF Interpreter
-providerName=Eclipse Modeling Project
diff --git a/plugins/org.eclipse.eef.interpreter/pom.xml b/plugins/org.eclipse.eef.interpreter/pom.xml
deleted file mode 100644
index 701fe7af5..000000000
--- a/plugins/org.eclipse.eef.interpreter/pom.xml
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-Copyright (c) 2015 Obeo.
-All rights reserved. This program and the accompanying materials
-are made available under the terms of the Eclipse Public License v1.0
-which accompanies this distribution, and is available at
-http://www.eclipse.org/legal/epl-v10.html
-
-Contributors:
- Obeo - initial API and implementation
--->
-<project
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.eclipse.eef</groupId>
- <artifactId>org.eclipse.eef.parent</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- <relativePath>../../releng/org.eclipse.eef.releng</relativePath>
- </parent>
-
- <artifactId>org.eclipse.eef.interpreter</artifactId>
- <packaging>eclipse-plugin</packaging>
-
- <name>EEF Interpreter</name>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.eclipse.tycho</groupId>
- <artifactId>tycho-source-plugin</artifactId>
- <version>${tycho-version}</version>
- </plugin>
- </plugins>
- </build>
-</project> \ No newline at end of file
diff --git a/plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IEvaluationResult.java b/plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IEvaluationResult.java
deleted file mode 100644
index 95d6db164..000000000
--- a/plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IEvaluationResult.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.interpreter.api;
-
-import org.eclipse.emf.common.util.Diagnostic;
-
-/**
- * The evaluation result.
- *
- * @author sbegaudeau
- */
-public interface IEvaluationResult {
- /**
- * The value returned by the expression.
- *
- * @return The value returned by the expression
- */
- Object getValue();
-
- /**
- * The diagnostic of the evaluation.
- *
- * @return The diagnostic
- */
- Diagnostic getDiagnostic();
-}
diff --git a/plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IInterpreter.java b/plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IInterpreter.java
deleted file mode 100644
index ee95847dd..000000000
--- a/plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IInterpreter.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.interpreter.api;
-
-import java.util.Map;
-
-/**
- * Common interface of all the interpreters used by the EEF runtime.
- *
- * @author sbegaudeau
- */
-public interface IInterpreter {
- /**
- * Evaluates the expression with the given body and parameters.
- *
- * @param variables
- * The variables used to evaluate the expression
- * @param expressionBody
- * The body of the expression
- * @return The result of the evaluation
- * @throws EvaluationException
- * In case of error during the evaluation
- */
- IEvaluationResult evaluateExpression(Map<String, Object> variables, String expressionBody);
-}
diff --git a/plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IInterpreterProvider.java b/plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IInterpreterProvider.java
deleted file mode 100644
index 47d18a0c3..000000000
--- a/plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IInterpreterProvider.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.interpreter.api;
-
-/**
- * This class is used to create a new instance of an interpreter and determine if it can handle a given expression.
- *
- * @author sbegaudeau
- */
-public interface IInterpreterProvider {
- /**
- * Indicates if the {@link IInterpreter} that can be created by this provider can handle the given expression.
- *
- * @param expression
- * The expression
- * @return <code>true</code> if the {@link IInterpreter} that can be created can handle the given expression,
- * <code>false</code> otherwise
- */
- boolean canHandle(String expression);
-
- /**
- * Creates a new instance of the interpreter.
- *
- * @return A new instance of the interpreter
- */
- IInterpreter createInterpreter();
-}
diff --git a/plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IValidationResult.java b/plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IValidationResult.java
deleted file mode 100644
index f3c5ac811..000000000
--- a/plugins/org.eclipse.eef.interpreter/src/org/eclipse/eef/interpreter/api/IValidationResult.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2015 Obeo.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- *
- * Contributors:
- * Obeo - initial API and implementation
- *******************************************************************************/
-package org.eclipse.eef.interpreter.api;
-
-import org.eclipse.emf.common.util.Diagnostic;
-
-/**
- * The result of the validation.
- *
- * @author sbegaudeau
- */
-public interface IValidationResult {
- /**
- * Returns the diagnostic.
- *
- * @return The diagnostic
- */
- Diagnostic getDiagonstic();
-}

Back to the top