Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVincent Lorenzo2017-05-03 12:57:13 +0000
committerGerrit Code Review @ Eclipse.org2017-05-05 12:45:59 +0000
commit657bf2fd1b714f8b089a4967836b35df43193c14 (patch)
tree8963458761569a53c0d2662ebcc37b7a2b04df43 /plugins/infra/emf
parentd938b903fdb16478fed45e9c4ca1b3ba2672f6ee (diff)
downloadorg.eclipse.papyrus-657bf2fd1b714f8b089a4967836b35df43193c14.tar.gz
org.eclipse.papyrus-657bf2fd1b714f8b089a4967836b35df43193c14.tar.xz
org.eclipse.papyrus-657bf2fd1b714f8b089a4967836b35df43193c14.zip
Bug 516104: [Expressions] Papyrus must provide an extension of Expressions Framework providing some basic expressions for UML Element
- new expressions for UML - JUnit tests for these expressions - properties views for these expressions - enhancement of the existing properties views for EMF Expressions Change-Id: I9bd5318695f6fba812146a711a51c371f6fe209a Signed-off-by: Vincent Lorenzo <vincent.lorenzo@cea.fr>
Diffstat (limited to 'plugins/infra/emf')
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/META-INF/MANIFEST.MF12
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/plugin.properties2
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/pom.xml1
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/META-INF/MANIFEST.MF14
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/plugin.properties2
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/pom.xml1
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/META-INF/MANIFEST.MF5
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/pom.xml1
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/expressions.ctx16
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleAndExpression.xwt4
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleNotExpression.xwt4
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleOrExpression.xwt4
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleReferenceBooleanExpression.xwt2
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/Activator.java2
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/factories/CustomExpressionsEMFModelElementFactory.java28
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/AndExpressionModelElement.java85
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/NotExpressionModelElement.java85
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/OrExpressionModelElement.java83
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/ReferenceBooleanEObjectExpressionModelElement.java13
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/provider/ExpressionCatalogContentProvider.java9
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/utils/BooleanEObjectExpressionPropertyEditorFactory.java79
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/utils/ExpressionsConstants.java34
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/META-INF/MANIFEST.MF9
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/plugin.properties2
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/pom.xml1
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomAndExpression.java16
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomNotExpression.java18
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/catalog/ExpressionCatalogRegistry.java7
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/util/custom/ExpressionsResourceFactory.java2
-rw-r--r--plugins/infra/emf/expressions/pom.xml5
30 files changed, 478 insertions, 68 deletions
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/META-INF/MANIFEST.MF b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/META-INF/MANIFEST.MF
index 10848ba9cda..f86b0f59ec5 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/META-INF/MANIFEST.MF
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/META-INF/MANIFEST.MF
@@ -10,10 +10,10 @@ Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Export-Package: org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.provider,
org.eclipse.papyrus.infra.emf.expressions.provider
-Require-Bundle: org.eclipse.core.runtime;resolution:=optional;x-installation:=greedy,
- org.eclipse.papyrus.infra.emf.expressions;visibility:=reexport,
- org.eclipse.emf.edit;visibility:=reexport,
- org.eclipse.uml2.types;visibility:=reexport,
- org.eclipse.uml2.common.edit;visibility:=reexport
-Import-Package: org.osgi.framework
+Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.12.0,4.0.0)";resolution:=optional;x-installation:=greedy,
+ org.eclipse.papyrus.infra.emf.expressions;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.emf.edit;bundle-version="[2.12.0,3.0.0)",
+ org.eclipse.uml2.types;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.uml2.common.edit;bundle-version="[2.1.0,3.0.0)"
Bundle-ActivationPolicy: lazy
+Bundle-Description: %Bundle-Description
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/plugin.properties b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/plugin.properties
index 29cf56c4b45..d5b731e2349 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/plugin.properties
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/plugin.properties
@@ -50,3 +50,5 @@ _UI_NotExpression_referencedExpression_feature = Referenced Expression
_UI_ReferenceBooleanExpression_referencedExpression_feature = Referenced Expression
_UI_Unknown_feature = Unspecified
+
+Bundle-Description = This plugin provides Icons and item providers for the EMF Expressions Framework. \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/pom.xml b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/pom.xml
index 4ba58994f89..b2ca3c968dd 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/pom.xml
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/pom.xml
@@ -10,4 +10,5 @@
<artifactId>org.eclipse.papyrus.infra.emf.expressions.edit</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
+ <description>This plugin provides Icons and item providers for the EMF Expressions Framework.</description>
</project> \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/META-INF/MANIFEST.MF b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/META-INF/MANIFEST.MF
index 90fa9d6be12..1392959cefd 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/META-INF/MANIFEST.MF
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/META-INF/MANIFEST.MF
@@ -10,10 +10,12 @@ Bundle-Localization: plugin
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Export-Package: org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.presentation,
org.eclipse.papyrus.infra.emf.expressions.presentation
-Require-Bundle: org.eclipse.core.runtime,
- org.eclipse.core.resources;visibility:=reexport,
- org.eclipse.papyrus.infra.emf.expressions.edit;visibility:=reexport,
- org.eclipse.emf.ecore.xmi;visibility:=reexport,
- org.eclipse.emf.edit.ui;visibility:=reexport,
- org.eclipse.ui.ide;visibility:=reexport
+Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.12.0,4.0.0)",
+ org.eclipse.core.resources;bundle-version="[3.12.0,4.0.0)",
+ org.eclipse.papyrus.infra.emf.expressions.edit;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.papyrus.infra.emf.expressions;bundle-version="1.0.0",
+ org.eclipse.emf.ecore.xmi;bundle-version="[2.12.0,3.0.0)",
+ org.eclipse.emf.edit.ui;bundle-version="[2.13.0,3.0.0)",
+ org.eclipse.ui.ide;bundle-version="[3.13.0,4.0.0)"
Bundle-ActivationPolicy: lazy
+Bundle-Description: %Bundle-Description
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/plugin.properties b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/plugin.properties
index 95eca8bc3b7..378d8e3e5e7 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/plugin.properties
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/plugin.properties
@@ -70,3 +70,5 @@ _UI_BooleanExpressionsEditor_menu = &BooleanExpressions Editor
_UI_BooleanExpressionsEditor_label = BooleanExpressions Model Editor
_UI_BooleanExpressionsEditorFilenameDefaultBase = My
_UI_BooleanExpressionsEditorFilenameExtensions = booleanexpressions
+
+Bundle-Description = Editor for EMF Expressions. \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/pom.xml b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/pom.xml
index af02e7d9b69..406838c740d 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/pom.xml
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/pom.xml
@@ -10,4 +10,5 @@
<artifactId>org.eclipse.papyrus.infra.emf.expressions.editor</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
+ <description>Editor for EMF Expressions.</description>
</project> \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/META-INF/MANIFEST.MF b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/META-INF/MANIFEST.MF
index 5d981573370..1c200e63842 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/META-INF/MANIFEST.MF
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
Manifest-Version: 1.0
Require-Bundle: org.eclipse.papyrus.infra.properties.ui;bundle-version="[2.0.0,3.0.0)",
- org.eclipse.papyrus.infra.constraints;bundle-version="[3.0.0,4.0.0)";visibility:=reexport,
- org.eclipse.papyrus.infra.emf.expressions;bundle-version="1.0.0"
+ org.eclipse.papyrus.infra.constraints;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.emf.expressions;bundle-version="[1.0.0,2.0.0)"
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
Bundle-Version: 1.0.0.qualifier
@@ -11,3 +11,4 @@ Bundle-ManifestVersion: 2
Bundle-Description: %pluginDescription
Bundle-SymbolicName: org.eclipse.papyrus.infra.emf.expressions.properties;singleton:=true
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Export-Package: org.eclipse.papyrus.infra.emf.expressions.properties.utils
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/pom.xml b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/pom.xml
index b9320607cc0..ca3646bd01a 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/pom.xml
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/pom.xml
@@ -10,4 +10,5 @@
<artifactId>org.eclipse.papyrus.infra.emf.expressions.properties</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
+ <description>This plugin provides the property views for the EMF expressions.</description>
</project> \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/expressions.ctx b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/expressions.ctx
index bdca266dae0..60c50e85ce9 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/expressions.ctx
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/expressions.ctx
@@ -268,9 +268,21 @@
</elements>
<modelElementFactory href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@modelElementFactories.0"/>
</dataContexts>
- <dataContexts xmi:id="_6U4QsCdvEeeoAJG6t_MwCA" name="custom expressions" label="custom expressions">
+ <dataContexts xmi:id="_6U4QsCdvEeeoAJG6t_MwCA" name="customexpressions" label="custom expressions">
<elements xmi:id="_Jq6mkCdwEeeoAJG6t_MwCA" name="CustomReferenceBooleanExpression" supertypes="_TD6UsCq7EeeggtQf9kdCWQ">
- <properties xmi:id="_X_kX8CdwEeeoAJG6t_MwCA" name="referencedExpression" type="Reference"/>
+ <properties xmi:id="_X_kX8CdwEeeoAJG6t_MwCA" name="referencedExpression" label="Referenced Expression" type="Reference"/>
+ </elements>
+ <elements xmi:id="_25jG8C8-EeexfKc2E3OwJQ" name="CustomAndExpression" supertypes="_TD6UqCq7EeeggtQf9kdCWQ">
+ <properties xmi:id="_6mc2gC8-EeexfKc2E3OwJQ" name="ownedExpressions" label="Owned Expressions" type="Reference" multiplicity="-1"/>
+ <properties xmi:id="_80D9kC8-EeexfKc2E3OwJQ" name="referencedExpressions" label="Referenced Expressions" type="Reference" multiplicity="-1"/>
+ </elements>
+ <elements xmi:id="_BosxQC8_EeexfKc2E3OwJQ" name="CustomOrExpression" supertypes="_TD6Uoyq7EeeggtQf9kdCWQ">
+ <properties xmi:id="_BotYUC8_EeexfKc2E3OwJQ" name="ownedExpressions" label="Owned Expressions" type="Reference" multiplicity="-1"/>
+ <properties xmi:id="_BotYUS8_EeexfKc2E3OwJQ" name="referencedExpressions" label="Referenced Expressions" type="Reference" multiplicity="-1"/>
+ </elements>
+ <elements xmi:id="_F-Dn8C8_EeexfKc2E3OwJQ" name="CustomNotExpression" supertypes="_TD6Uqyq7EeeggtQf9kdCWQ">
+ <properties xmi:id="_F-Dn8S8_EeexfKc2E3OwJQ" name="ownedExpression" label="Owned Expression" type="Reference" description="This field can be null, in this case we evaluate Referenced Expression."/>
+ <properties xmi:id="_F-Dn8i8_EeexfKc2E3OwJQ" name="referencedExpression" label="Referenced Expression" type="Reference" description="This field is evaluated only when Owned Expression is not null.&#xD;&#xA;This field can be null."/>
</elements>
<modelElementFactory href="Environment.xmi#//@modelElementFactories.0"/>
</dataContexts>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleAndExpression.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleAndExpression.xwt
index ac9030c9ceb..ac5c415f831 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleAndExpression.xwt
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleAndExpression.xwt
@@ -20,8 +20,8 @@
<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
</Composite.layout>
<ppe:MultiReference input="{Binding}"
- property="expressions:booleanexpressions:AndExpression:ownedExpressions"></ppe:MultiReference>
+ property="customexpressions:CustomAndExpression:ownedExpressions"></ppe:MultiReference>
<ppe:MultiReference input="{Binding}"
- property="expressions:booleanexpressions:AndExpression:referencedExpressions"></ppe:MultiReference>
+ property="customexpressions:CustomAndExpression:referencedExpressions"></ppe:MultiReference>
</Composite>
</Composite> \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleNotExpression.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleNotExpression.xwt
index 05eaea2e993..315c7562895 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleNotExpression.xwt
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleNotExpression.xwt
@@ -20,8 +20,8 @@
<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
</Composite.layout>
<ppe:ReferenceDialog input="{Binding}"
- property="expressions:booleanexpressions:NotExpression:ownedExpression"></ppe:ReferenceDialog>
+ property="customexpressions:CustomNotExpression:ownedExpression"></ppe:ReferenceDialog>
<ppe:ReferenceDialog input="{Binding}"
- property="expressions:booleanexpressions:NotExpression:referencedExpression"></ppe:ReferenceDialog>
+ property="customexpressions:CustomNotExpression:referencedExpression"></ppe:ReferenceDialog>
</Composite>
</Composite> \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleOrExpression.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleOrExpression.xwt
index 202d438140a..258b5f29520 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleOrExpression.xwt
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleOrExpression.xwt
@@ -20,8 +20,8 @@
<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
</Composite.layout>
<ppe:MultiReference input="{Binding}"
- property="expressions:booleanexpressions:OrExpression:ownedExpressions"></ppe:MultiReference>
+ property="customexpressions:CustomOrExpression:ownedExpressions"></ppe:MultiReference>
<ppe:MultiReference input="{Binding}"
- property="expressions:booleanexpressions:OrExpression:referencedExpressions"></ppe:MultiReference>
+ property="customexpressions:CustomOrExpression:referencedExpressions"></ppe:MultiReference>
</Composite>
</Composite> \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleReferenceBooleanExpression.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleReferenceBooleanExpression.xwt
index a0944ccf1cb..9e8d707bd28 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleReferenceBooleanExpression.xwt
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleReferenceBooleanExpression.xwt
@@ -20,6 +20,6 @@
<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
</Composite.layout>
<ppe:ReferenceDialog input="{Binding}"
- property="custom expressions:CustomReferenceBooleanExpression:referencedExpression"></ppe:ReferenceDialog>
+ property="customexpressions:CustomReferenceBooleanExpression:referencedExpression"></ppe:ReferenceDialog>
</Composite>
</Composite> \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/Activator.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/Activator.java
index d9229610c42..5338bf8fe22 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/Activator.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/Activator.java
@@ -1,5 +1,5 @@
/*****************************************************************************
- * Copyright (c) 2013 CEA LIST.
+ * Copyright (c) 2017 CEA LIST.
*
*
* All rights reserved. This program and the accompanying materials
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/factories/CustomExpressionsEMFModelElementFactory.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/factories/CustomExpressionsEMFModelElementFactory.java
index 78330e6b6a6..3b9fefb0774 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/factories/CustomExpressionsEMFModelElementFactory.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/factories/CustomExpressionsEMFModelElementFactory.java
@@ -1,21 +1,28 @@
/*****************************************************************************
- * Copyright (c) 2017 CEA LIST and others.
- *
+ * Copyright (c) 2017 CEA LIST.
+ *
+ *
* 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:
- * CEA LIST - Initial API and implementation
- *
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
*****************************************************************************/
package org.eclipse.papyrus.infra.emf.expressions.properties.factories;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.AndExpression;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.NotExpression;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.OrExpression;
import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.ReferenceBooleanExpression;
import org.eclipse.papyrus.infra.emf.expressions.properties.Activator;
+import org.eclipse.papyrus.infra.emf.expressions.properties.modelelements.AndExpressionModelElement;
+import org.eclipse.papyrus.infra.emf.expressions.properties.modelelements.NotExpressionModelElement;
+import org.eclipse.papyrus.infra.emf.expressions.properties.modelelements.OrExpressionModelElement;
import org.eclipse.papyrus.infra.emf.expressions.properties.modelelements.ReferenceBooleanEObjectExpressionModelElement;
import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.properties.contexts.DataContextElement;
@@ -23,7 +30,7 @@ import org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement;
import org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElementFactory;
/**
- * @author VL222926
+ * Custom Factory for EMF Expressions
*
*/
public class CustomExpressionsEMFModelElementFactory extends EMFModelElementFactory {
@@ -46,6 +53,17 @@ public class CustomExpressionsEMFModelElementFactory extends EMFModelElementFact
if (sourceElement instanceof ReferenceBooleanExpression) {
return new ReferenceBooleanEObjectExpressionModelElement((EObject) sourceElement, EMFHelper.resolveEditingDomain(sourceElement));
}
+ if(sourceElement instanceof AndExpression) {
+ return new AndExpressionModelElement((EObject) sourceElement, EMFHelper.resolveEditingDomain(sourceElement));
+ }
+ if(sourceElement instanceof OrExpression) {
+ return new OrExpressionModelElement((EObject) sourceElement, EMFHelper.resolveEditingDomain(sourceElement));
+ }
+ if(sourceElement instanceof NotExpression) {
+ return new NotExpressionModelElement((EObject) sourceElement, EMFHelper.resolveEditingDomain(sourceElement));
+ }
+
+
return super.doCreateFromSource(sourceElement, context);
}
}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/AndExpressionModelElement.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/AndExpressionModelElement.java
new file mode 100755
index 00000000000..4aa56969b3b
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/AndExpressionModelElement.java
@@ -0,0 +1,85 @@
+/*****************************************************************************
+ * Copyright (c) 2017 CEA LIST.
+ *
+ *
+ * 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:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.properties.modelelements;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.AndExpression;
+import org.eclipse.papyrus.infra.emf.expressions.properties.provider.ExpressionCatalogContentProvider;
+import org.eclipse.papyrus.infra.emf.expressions.properties.utils.BooleanEObjectExpressionPropertyEditorFactory;
+import org.eclipse.papyrus.infra.emf.expressions.properties.utils.ExpressionsConstants;
+import org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement;
+import org.eclipse.papyrus.infra.widgets.creation.ReferenceValueFactory;
+import org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider;
+
+/**
+ * ModelElement for {@link AndExpression}
+ *
+ */
+public class AndExpressionModelElement extends EMFModelElement {
+
+ /**
+ * Constructor.
+ *
+ * @param source
+ * @param domain
+ */
+ public AndExpressionModelElement(EObject source, EditingDomain domain) {
+ super(source, domain);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param source
+ */
+ public AndExpressionModelElement(EObject source) {
+ super(source);
+ }
+
+ /**
+ *
+ * @see org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement#getValueFactory(java.lang.String)
+ *
+ * @param propertyPath
+ * @return
+ */
+ @Override
+ public ReferenceValueFactory getValueFactory(final String propertyPath) {
+ if (ExpressionsConstants.OWNED_EXPRESSIONS.equals(propertyPath)) {
+ if (getDomain() instanceof AdapterFactoryEditingDomain) {
+ return new BooleanEObjectExpressionPropertyEditorFactory((AdapterFactoryEditingDomain) getDomain(), (EReference) getFeature(propertyPath));
+ }
+ }
+ return super.getValueFactory(propertyPath);
+ }
+
+ /**
+ * @see org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement#getContentProvider(java.lang.String)
+ *
+ * @param propertyPath
+ * @return
+ */
+ @Override
+ public IStaticContentProvider getContentProvider(final String propertyPath) {
+ if (ExpressionsConstants.REFERENCED_EXPRESSIONS.equals(propertyPath)) {
+ return new ExpressionCatalogContentProvider((EReference) getFeature(propertyPath));
+ }
+ return super.getContentProvider(propertyPath);
+ }
+
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/NotExpressionModelElement.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/NotExpressionModelElement.java
new file mode 100755
index 00000000000..62501a170bd
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/NotExpressionModelElement.java
@@ -0,0 +1,85 @@
+/*****************************************************************************
+ * Copyright (c) 2017 CEA LIST.
+ *
+ *
+ * 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:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.properties.modelelements;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.AndExpression;
+import org.eclipse.papyrus.infra.emf.expressions.properties.provider.ExpressionCatalogContentProvider;
+import org.eclipse.papyrus.infra.emf.expressions.properties.utils.BooleanEObjectExpressionPropertyEditorFactory;
+import org.eclipse.papyrus.infra.emf.expressions.properties.utils.ExpressionsConstants;
+import org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement;
+import org.eclipse.papyrus.infra.widgets.creation.ReferenceValueFactory;
+import org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider;
+
+/**
+ * ModelElement for {@link NotExpression}
+ *
+ */
+public class NotExpressionModelElement extends EMFModelElement {
+ /**
+ * Constructor.
+ *
+ * @param source
+ * @param domain
+ */
+ public NotExpressionModelElement(EObject source, EditingDomain domain) {
+ super(source, domain);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param source
+ */
+ public NotExpressionModelElement(EObject source) {
+ super(source);
+ }
+
+ /**
+ *
+ * @see org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement#getValueFactory(java.lang.String)
+ *
+ * @param propertyPath
+ * @return
+ */
+ @Override
+ public ReferenceValueFactory getValueFactory(final String propertyPath) {
+ if (ExpressionsConstants.OWNED_EXPRESSION.equals(propertyPath)) {
+ if (getDomain() instanceof AdapterFactoryEditingDomain) {
+ return new BooleanEObjectExpressionPropertyEditorFactory((AdapterFactoryEditingDomain) getDomain(), (EReference) getFeature(propertyPath));
+ }
+ }
+ return super.getValueFactory(propertyPath);
+ }
+
+ /**
+ * @see org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement#getContentProvider(java.lang.String)
+ *
+ * @param propertyPath
+ * @return
+ */
+ @Override
+ public IStaticContentProvider getContentProvider(final String propertyPath) {
+ if (ExpressionsConstants.REFERENCED_EXPRESSION.equals(propertyPath)) {
+ return new ExpressionCatalogContentProvider((EReference) getFeature(propertyPath));
+ }
+ return super.getContentProvider(propertyPath);
+ }
+
+
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/OrExpressionModelElement.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/OrExpressionModelElement.java
new file mode 100755
index 00000000000..b781e35f761
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/OrExpressionModelElement.java
@@ -0,0 +1,83 @@
+/*****************************************************************************
+ * Copyright (c) 2017 CEA LIST.
+ *
+ *
+ * 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:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.properties.modelelements;
+
+import org.eclipse.core.internal.expressions.OrExpression;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.infra.emf.expressions.properties.provider.ExpressionCatalogContentProvider;
+import org.eclipse.papyrus.infra.emf.expressions.properties.utils.BooleanEObjectExpressionPropertyEditorFactory;
+import org.eclipse.papyrus.infra.emf.expressions.properties.utils.ExpressionsConstants;
+import org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement;
+import org.eclipse.papyrus.infra.widgets.creation.ReferenceValueFactory;
+import org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider;
+
+/**
+ * ModelElement for {@link OrExpression} *
+ */
+public class OrExpressionModelElement extends EMFModelElement {
+
+ /**
+ * Constructor.
+ *
+ * @param source
+ * @param domain
+ */
+ public OrExpressionModelElement(EObject source, EditingDomain domain) {
+ super(source, domain);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param source
+ */
+ public OrExpressionModelElement(EObject source) {
+ super(source);
+ }
+
+ /**
+ *
+ * @see org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement#getValueFactory(java.lang.String)
+ *
+ * @param propertyPath
+ * @return
+ */
+ @Override
+ public ReferenceValueFactory getValueFactory(final String propertyPath) {
+ if (ExpressionsConstants.OWNED_EXPRESSIONS.equals(propertyPath)) {
+ if (getDomain() instanceof AdapterFactoryEditingDomain) {
+ return new BooleanEObjectExpressionPropertyEditorFactory((AdapterFactoryEditingDomain) getDomain(), (EReference) getFeature(propertyPath));
+ }
+ }
+ return super.getValueFactory(propertyPath);
+ }
+
+ /**
+ * @see org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement#getContentProvider(java.lang.String)
+ *
+ * @param propertyPath
+ * @return
+ */
+ @Override
+ public IStaticContentProvider getContentProvider(final String propertyPath) {
+ if (ExpressionsConstants.REFERENCED_EXPRESSIONS.equals(propertyPath)) {
+ return new ExpressionCatalogContentProvider((EReference) getFeature(propertyPath));
+ }
+ return super.getContentProvider(propertyPath);
+ }
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/ReferenceBooleanEObjectExpressionModelElement.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/ReferenceBooleanEObjectExpressionModelElement.java
index 4ccbb5ecca1..bc82c38e36b 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/ReferenceBooleanEObjectExpressionModelElement.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/ReferenceBooleanEObjectExpressionModelElement.java
@@ -1,14 +1,15 @@
/*****************************************************************************
- * Copyright (c) 2017 CEA LIST and others.
- *
+ * Copyright (c) 2017 CEA LIST.
+ *
+ *
* 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:
- * CEA LIST - Initial API and implementation
- *
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
*****************************************************************************/
package org.eclipse.papyrus.infra.emf.expressions.properties.modelelements;
@@ -16,13 +17,13 @@ package org.eclipse.papyrus.infra.emf.expressions.properties.modelelements;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.edit.domain.EditingDomain;
import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.BooleanExpressionsPackage;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.ReferenceBooleanExpression;
import org.eclipse.papyrus.infra.emf.expressions.properties.provider.ExpressionCatalogContentProvider;
import org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement;
import org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider;
/**
- * @author VL222926
- *
+ * ModelElement for {@link ReferenceBooleanExpression}
*/
public class ReferenceBooleanEObjectExpressionModelElement extends EMFModelElement {
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/provider/ExpressionCatalogContentProvider.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/provider/ExpressionCatalogContentProvider.java
index 485f7e6c166..49e3c32de17 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/provider/ExpressionCatalogContentProvider.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/provider/ExpressionCatalogContentProvider.java
@@ -1,14 +1,15 @@
/*****************************************************************************
- * Copyright (c) 2017 CEA LIST and others.
- *
+ * Copyright (c) 2017 CEA LIST.
+ *
+ *
* 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:
- * CEA LIST - Initial API and implementation
- *
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
*****************************************************************************/
package org.eclipse.papyrus.infra.emf.expressions.properties.provider;
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/utils/BooleanEObjectExpressionPropertyEditorFactory.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/utils/BooleanEObjectExpressionPropertyEditorFactory.java
new file mode 100755
index 00000000000..efac97024c2
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/utils/BooleanEObjectExpressionPropertyEditorFactory.java
@@ -0,0 +1,79 @@
+/*****************************************************************************
+ * Copyright (c) 2017 CEA LIST.
+ *
+ *
+ * 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:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.properties.utils;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.edit.command.CommandParameter;
+import org.eclipse.emf.edit.domain.AdapterFactoryEditingDomain;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.AndExpression;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.BooleanExpressionsFactory;
+import org.eclipse.papyrus.infra.emf.utils.EClassNameComparator;
+import org.eclipse.papyrus.infra.properties.ui.creation.EcorePropertyEditorFactory;
+
+/**
+ * This class has been created to be able to find all available BooleanEObject expressions using the EMF Mechanism, in order to be able to create
+ * them easily outside of the EMF Editor. The super class EcorePropertyEditorFactory is only able to found the expressions provided by expressions.ecore and not them owned by umlexpressions.ecore
+ *
+ */
+public class BooleanEObjectExpressionPropertyEditorFactory extends EcorePropertyEditorFactory {
+
+ /**
+ * The editing domain
+ */
+ private AdapterFactoryEditingDomain domain;
+
+ /**
+ * an expression parameterized by Boolean and EObject (And, Or, Not, Reference, ...) could be used for this role
+ */
+ private AndExpression dummyBooleanEObjectExp = BooleanExpressionsFactory.eINSTANCE.createAndExpression();
+
+ /**
+ * Constructor.
+ *
+ * @param referenceIn
+ */
+ public BooleanEObjectExpressionPropertyEditorFactory(final AdapterFactoryEditingDomain domain, final EReference referenceIn) {
+ super(referenceIn);
+ this.domain = domain;
+ }
+
+
+ /**
+ * @see org.eclipse.papyrus.infra.properties.ui.creation.EcorePropertyEditorFactory#getAvailableEClasses()
+ *
+ * @return
+ */
+ @Override
+ protected List<EClass> getAvailableEClasses() {
+ final List<EClass> availableEClasses = new ArrayList<EClass>();
+
+ final Collection<?> desc = this.domain.getNewChildDescriptors(this.dummyBooleanEObjectExp, null);
+ for (Object curr : desc) {
+ if (curr instanceof CommandParameter) {
+ EClass tmp = ((CommandParameter) curr).getEValue().eClass();
+ if (null != tmp) {
+ availableEClasses.add(tmp);
+ }
+ }
+ }
+ availableEClasses.sort(new EClassNameComparator());
+ return availableEClasses;
+ }
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/utils/ExpressionsConstants.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/utils/ExpressionsConstants.java
new file mode 100755
index 00000000000..981cd85af86
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/utils/ExpressionsConstants.java
@@ -0,0 +1,34 @@
+/*****************************************************************************
+ * Copyright (c) 2017 CEA LIST.
+ *
+ *
+ * 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:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.properties.utils;
+
+/**
+ * Constants used for custom expressions elements
+ *
+ */
+public class ExpressionsConstants {
+
+ private ExpressionsConstants() {
+ // no prevent instanciation
+ }
+
+ public static final String OWNED_EXPRESSIONS = "ownedExpressions"; //$NON-NLS-1$
+
+ public static final String OWNED_EXPRESSION = "ownedExpression"; //$NON-NLS-1$
+
+ public static final String REFERENCED_EXPRESSIONS = "referencedExpressions"; //$NON-NLS-1$
+
+ public static final String REFERENCED_EXPRESSION = "referencedExpression"; //$NON-NLS-1$
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/META-INF/MANIFEST.MF b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/META-INF/MANIFEST.MF
index 6f4a0ded812..03d9d15278c 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/META-INF/MANIFEST.MF
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/META-INF/MANIFEST.MF
@@ -16,8 +16,9 @@ Export-Package: org.eclipse.papyrus.infra.emf.expressions,
org.eclipse.papyrus.infra.emf.expressions.impl,
org.eclipse.papyrus.infra.emf.expressions.util,
org.eclipse.papyrus.infra.emf.expressions.util.custom
-Require-Bundle: org.eclipse.core.runtime;resolution:=optional;x-installation:=greedy,
- org.eclipse.emf.ecore;visibility:=reexport,
- org.eclipse.uml2.types;visibility:=reexport,
- org.eclipse.emf.ecore.xmi
+Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.12.0,4.0.0)";resolution:=optional;x-installation:=greedy,
+ org.eclipse.emf.ecore;bundle-version="[2.12.0,3.0.0)",
+ org.eclipse.uml2.types;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.emf.ecore.xmi;bundle-version="[2.12.0,3.0.0)"
Bundle-ActivationPolicy: lazy
+Bundle-Description: %Bundle-Description
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/plugin.properties b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/plugin.properties
index 0c75279b920..2ee978fce00 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/plugin.properties
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/plugin.properties
@@ -11,3 +11,5 @@
pluginName = Papyrus EMF Expression
providerName = Eclipse Modeling Project
+
+Bundle-Description = This plugin provides a new Framework called Expressions to request easily elements, particularly EObject. This framework is easily extensible to allow to developper to provide new Expressions dedicated to their needs. \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/pom.xml b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/pom.xml
index 233bfe4f2ed..6e7ca35450b 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/pom.xml
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/pom.xml
@@ -10,4 +10,5 @@
<artifactId>org.eclipse.papyrus.infra.emf.expressions</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
+ <description>This plugin provides a new Framework called Expressions to request easily elements, particularly EObject. This framework is easily extensible to allow to developper to provide new Expressions dedicated to their needs.</description>
</project> \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomAndExpression.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomAndExpression.java
index 41d773b26b9..20c8a105d93 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomAndExpression.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomAndExpression.java
@@ -16,23 +16,23 @@ import org.eclipse.emf.ecore.EObject;
import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.IBooleanExpression;
import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.AndExpressionImpl;
-public class CustomAndExpression extends AndExpressionImpl{
-
+public class CustomAndExpression extends AndExpressionImpl {
+
@Override
public Boolean evaluate(EObject context) {
- for(IBooleanExpression<EObject> current : getOwnedExpressions()) {
- if(Boolean.FALSE.equals(current.evaluate(context))){
+ for (IBooleanExpression<EObject> current : getOwnedExpressions()) {
+ if (Boolean.FALSE.equals(current.evaluate(context))) {
return Boolean.FALSE;
}
}
-
- for(IBooleanExpression<EObject> current : getReferencedExpressions()) {
- if(Boolean.FALSE.equals(current.evaluate(context))){
+
+ for (IBooleanExpression<EObject> current : getReferencedExpressions()) {
+ if (Boolean.FALSE.equals(current.evaluate(context))) {
return Boolean.FALSE;
}
}
-
+
return Boolean.TRUE;
}
} \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomNotExpression.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomNotExpression.java
index 2a4d97f397d..59cd08f5c5d 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomNotExpression.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomNotExpression.java
@@ -16,21 +16,21 @@ import org.eclipse.emf.ecore.EObject;
import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.NotExpressionImpl;
-public class CustomNotExpression extends NotExpressionImpl{
-
+public class CustomNotExpression extends NotExpressionImpl {
+
@Override
public Boolean evaluate(EObject context) {
- //1. we evaluate the own expression first
- if(null!=ownedExpression) {
+ // 1. we evaluate the own expression first
+ if (null != ownedExpression) {
return !ownedExpression.evaluate(context);
}
-
- //2. we evaluate the referenced expression
- if(null!=referencedExpression) {
+
+ // 2. we evaluate the referenced expression
+ if (null != referencedExpression) {
return !referencedExpression.evaluate(context);
}
-
- //3. we return the default value
+
+ // 3. we return the default value
return Boolean.FALSE;
}
} \ No newline at end of file
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/catalog/ExpressionCatalogRegistry.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/catalog/ExpressionCatalogRegistry.java
index 2262bce4bcd..7c2318e7167 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/catalog/ExpressionCatalogRegistry.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/catalog/ExpressionCatalogRegistry.java
@@ -42,7 +42,7 @@ public class ExpressionCatalogRegistry {
* the field used to register the expressions model file contributing to this extension point
*/
public static final String FILE_ATTRIBUTE = "file"; //$NON-NLS-1$
-
+
/**
* The list of the registered catalog
*/
@@ -72,10 +72,9 @@ public class ExpressionCatalogRegistry {
for (final IConfigurationElement iConfigurationElement : configElements) {
Object file = iConfigurationElement.getAttribute(FILE_ATTRIBUTE);
IContributor contributor = iConfigurationElement.getContributor();
-
- // we build the uri for the file
- URI uri = URI.createPlatformPluginURI(contributor.getName() + "/" + file.toString(), true);
+ // we build the uri for the file
+ URI uri = URI.createPlatformPluginURI(contributor.getName() + "/" + file.toString(), true); //$NON-NLS-1$
Resource res = this.resourceSet.getResource(uri, true);
if (res.getContents().size() > 0) {
EObject first = res.getContents().get(0);
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/util/custom/ExpressionsResourceFactory.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/util/custom/ExpressionsResourceFactory.java
index e9458e8de98..d29ed4a8103 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/util/custom/ExpressionsResourceFactory.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/util/custom/ExpressionsResourceFactory.java
@@ -19,7 +19,7 @@ import org.eclipse.emf.ecore.resource.Resource.Factory;
public class ExpressionsResourceFactory implements Factory {
public ExpressionsResourceFactory() {
- //nothing to do
+ // nothing to do
}
@Override
diff --git a/plugins/infra/emf/expressions/pom.xml b/plugins/infra/emf/expressions/pom.xml
index 45516103571..7154a429373 100644
--- a/plugins/infra/emf/expressions/pom.xml
+++ b/plugins/infra/emf/expressions/pom.xml
@@ -13,7 +13,7 @@
<packaging>pom</packaging>
<name>Papyrus EMF Expressions Infrastructure</name>
- <description>Plug-ins proving Expressions Framework.</description>
+ <description>Plug-ins providing Expressions Framework.</description>
<modules>
<module>org.eclipse.papyrus.infra.emf.expressions</module>
@@ -21,5 +21,4 @@
<module>org.eclipse.papyrus.infra.emf.expressions.editor</module>
<module>org.eclipse.papyrus.infra.emf.expressions.properties</module>
</modules>
-</project>
-L \ No newline at end of file
+</project> \ No newline at end of file

Back to the top