Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVincent Lorenzo2019-06-14 04:31:38 -0400
committervincent lorenzo2019-06-18 09:29:37 -0400
commit298b439c010cbfc855b0489e9cded2d8d4106bb3 (patch)
treec0a9dc33b2dddc07b7c926a4448b1c7d45f645d2 /plugins
parent4debfd3361ccde920241edd952dd8f01858176e7 (diff)
downloadorg.eclipse.papyrus-298b439c010cbfc855b0489e9cded2d8d4106bb3.tar.gz
org.eclipse.papyrus-298b439c010cbfc855b0489e9cded2d8d4106bb3.tar.xz
org.eclipse.papyrus-298b439c010cbfc855b0489e9cded2d8d4106bb3.zip
Bug 548237: [Expression] Papyrus must provide new expressions check single valued EAttribute and Stereotype Properties values (equality tests)
- provide the expression SingleEAttributeValueEqualityExpression - provide the property View for it - regenerate property view and remove useless custom datacontexts - increase model and edit plugins from 1.0.0 to 1.1.0 (due to added classes). - increase editor and properties plugin from 1.0.0 to 1.0.100 (just to indicate a regeneration and some changes which don't break API) - create a EMF property view for EMF Expressions framework - create new plugin org.eclipse.papyrus.emf.ui to group common code for EMF UI Change-Id: I4a35a3f57009f0a8c27f78c83e4f9431e0394ec1 Signed-off-by: Vincent Lorenzo <vincent.lorenzo@cea.fr>
Diffstat (limited to 'plugins')
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/.classpath8
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/.project28
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.core.resources.prefs2
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.core.runtime.prefs2
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.jdt.core.prefs297
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.jdt.ui.prefs127
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.pde.api.tools.prefs104
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/META-INF/MANIFEST.MF25
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/OSGI-INF/l10n/bundle.properties4
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/README4
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/about.html28
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/comparators/ENamedElementComparator.java44
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/contentproviders/EcoreContentProvider.java91
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/converters/IDisplayConverter.java47
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/converters/IdentityDisplayConverter.java49
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/AbstractEStructuralFeatureDialogEditorFactory.java138
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/AbstractEcoreEReferenceDialogEditorFactory.java86
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/AbtractSingleEAttributeReferenceEditorFactory.java51
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/CustomExtendedDialogCellEditor.java280
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/messages/Messages.java36
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/messages/messages.properties8
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/properties/AbstractEObjectAdvancedPropertySection.java100
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/properties/CustomPropertyDescriptor.java67
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/providers/labelproviders/DelegatingToEMFLabelProvider.java208
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/AbstractSelectionStatusValidator.java48
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/OKSelectionStatusValidator.java36
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEAttributeValidator.java48
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEClassValidator.java48
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEReferenceValidator.java48
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEStructuralFeatureValidator.java48
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/build.properties21
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/pom.xml14
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf.ui/src/org/eclipse/papyrus/emf/ui/Activator.java67
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf/README3
-rwxr-xr-xplugins/emf/org.eclipse.papyrus.emf/pom.xml3
-rw-r--r--plugins/emf/pom.xml15
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/.classpath3
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/.settings/org.eclipse.jdt.core.prefs34
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/META-INF/MANIFEST.MF10
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/build.properties1
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/custom_icons/full/obj16/SingleEAttributeValueEqualityExpression.gifbin0 -> 870 bytes
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/icons/full/obj16/SingleEAttributeValueEqualityExpression.gifbin0 -> 870 bytes
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/plugin.properties8
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/plugin.xml30
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/pom.xml5
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/AndExpressionItemProvider.java26
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/BooleanExpressionsItemProviderAdapterFactory.java45
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/LiteralFalseExpressionItemProvider.java17
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/LiteralTrueExpressionItemProvider.java17
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/NotExpressionItemProvider.java26
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/OrExpressionItemProvider.java26
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/ReferenceBooleanExpressionItemProvider.java17
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/SingleEAttributeValueEqualityExpressionItemProvider.java255
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionCatalogItemProvider.java22
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionsEditPlugin.java16
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionsItemProviderAdapterFactory.java21
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/editor/factories/MultiBooleanExpressionsReferenceEditorFactory.java78
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/editor/factories/SingleBooleanExpressionReferenceEditorFactory.java81
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/editor/factories/SingleEAttributeReferenceExpressionEditorFactory.java62
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/messages/Messages.java35
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/messages/messages.properties2
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/properties/EMFExpressionPropertySection.java40
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/properties/EMFExpressionPropertySource.java71
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/properties/EMFExpressionSectionFilter.java49
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/providers/ExpressionCatalogContentProvider.java88
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/validators/MultiBooleanExpressionValidator.java52
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/validators/SingleBooleanExpressionValidator.java50
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/.classpath2
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/.settings/org.eclipse.jdt.core.prefs34
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/META-INF/MANIFEST.MF2
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/build.properties1
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/plugin.properties3
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/pom.xml2
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/presentation/BooleanExpressionsActionBarContributor.java5
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/presentation/BooleanExpressionsEditor.java55
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsActionBarContributor.java5
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsEditor.java55
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsModelWizard.java4
-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.xml2
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/expressions.ctx326
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/MultipleSingleEAttributeValueEqualityExpression.xwt9
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleAndExpression.xwt7
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleExpressionCatalog.xwt3
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBasicExpressionElement.xwt3
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBooleanEObjectExpression.xwt3
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBooleanExpression.xwt3
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIExpression.xwt3
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleLiteralFalseExpression.xwt3
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleLiteralTrueExpression.xwt3
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleNotExpression.xwt7
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleOrExpression.xwt7
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleReferenceBooleanExpression.xwt5
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleSingleEAttributeValueEqualityExpression.xwt28
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/factories/CustomExpressionsEMFModelElementFactory.java16
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/SingleEAttributeValueEqualityExpressionModelElement.java82
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/provider/SingleEAttributeContentProvider.java157
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/.classpath4
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/.settings/org.eclipse.jdt.core.prefs34
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/META-INF/MANIFEST.MF2
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/icons/Expressions.gifbin0 -> 310 bytes
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.ecore38
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.genmodel8
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.notation90
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.uml36
-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/plugin.xml3
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/pom.xml5
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/AndExpression.java15
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/BooleanExpressionsFactory.java24
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/BooleanExpressionsPackage.java147
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/IBooleanEObjectExpression.java15
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/IBooleanExpression.java15
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/LiteralFalseExpression.java15
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/LiteralTrueExpression.java15
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/NotExpression.java15
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/OrExpression.java15
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/ReferenceBooleanExpression.java15
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/SingleEAttributeValueEqualityExpression.java91
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/AndExpressionImpl.java23
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/BooleanExpressionsFactoryImpl.java34
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/BooleanExpressionsPackageImpl.java106
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/LiteralFalseExpressionImpl.java21
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/LiteralTrueExpressionImpl.java21
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/NotExpressionImpl.java25
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/OrExpressionImpl.java23
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/ReferenceBooleanExpressionImpl.java23
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/SingleEAttributeValueEqualityExpressionImpl.java382
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/util/BooleanExpressionsAdapterFactory.java33
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/util/BooleanExpressionsSwitch.java40
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionCatalogImpl.java7
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionsFactoryImpl.java2
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionsPackageImpl.java25
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomBooleanExpressionsFactory.java18
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomSingleEAttributeValueEqualityExpression.java50
-rwxr-xr-xplugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/catalog/ExpressionCatalogRegistry.java16
136 files changed, 5148 insertions, 565 deletions
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/.classpath b/plugins/emf/org.eclipse.papyrus.emf.ui/.classpath
new file mode 100755
index 00000000000..038e0855732
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/.classpath
@@ -0,0 +1,8 @@
+<?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.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="src" path="api"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/.project b/plugins/emf/org.eclipse.papyrus.emf.ui/.project
new file mode 100755
index 00000000000..b7eb488ddf2
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.emf.ui</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.ManifestBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>org.eclipse.pde.SchemaBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.core.resources.prefs b/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.core.resources.prefs
new file mode 100755
index 00000000000..896a9a53a53
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8 \ No newline at end of file
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.core.runtime.prefs b/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.core.runtime.prefs
new file mode 100755
index 00000000000..5a0ad22d2a7
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100755
index 00000000000..74c6d08d7e4
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,297 @@
+eclipse.preferences.version=1
+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.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+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.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.8
+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=260
+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=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=false
+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=260
+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=5
+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=false
+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
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.jdt.ui.prefs b/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.jdt.ui.prefs
new file mode 100755
index 00000000000..1a3bd02c047
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,127 @@
+cleanup.add_default_serial_version_id=true
+cleanup.add_generated_serial_version_id=false
+cleanup.add_missing_annotations=true
+cleanup.add_missing_deprecated_annotations=true
+cleanup.add_missing_methods=false
+cleanup.add_missing_nls_tags=false
+cleanup.add_missing_override_annotations=true
+cleanup.add_missing_override_annotations_interface_methods=true
+cleanup.add_serial_version_id=false
+cleanup.always_use_blocks=true
+cleanup.always_use_parentheses_in_expressions=false
+cleanup.always_use_this_for_non_static_field_access=false
+cleanup.always_use_this_for_non_static_method_access=false
+cleanup.convert_functional_interfaces=false
+cleanup.convert_to_enhanced_for_loop=false
+cleanup.correct_indentation=false
+cleanup.format_source_code=false
+cleanup.format_source_code_changes_only=false
+cleanup.insert_inferred_type_arguments=false
+cleanup.make_local_variable_final=true
+cleanup.make_parameters_final=false
+cleanup.make_private_fields_final=true
+cleanup.make_type_abstract_if_missing_method=false
+cleanup.make_variable_declarations_final=false
+cleanup.never_use_blocks=false
+cleanup.never_use_parentheses_in_expressions=true
+cleanup.organize_imports=false
+cleanup.qualify_static_field_accesses_with_declaring_class=false
+cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+cleanup.qualify_static_member_accesses_with_declaring_class=true
+cleanup.qualify_static_method_accesses_with_declaring_class=false
+cleanup.remove_private_constructors=true
+cleanup.remove_redundant_type_arguments=true
+cleanup.remove_trailing_whitespaces=true
+cleanup.remove_trailing_whitespaces_all=true
+cleanup.remove_trailing_whitespaces_ignore_empty=false
+cleanup.remove_unnecessary_casts=true
+cleanup.remove_unnecessary_nls_tags=true
+cleanup.remove_unused_imports=true
+cleanup.remove_unused_local_variables=false
+cleanup.remove_unused_private_fields=true
+cleanup.remove_unused_private_members=false
+cleanup.remove_unused_private_methods=true
+cleanup.remove_unused_private_types=true
+cleanup.sort_members=false
+cleanup.sort_members_all=false
+cleanup.use_anonymous_class_creation=false
+cleanup.use_blocks=true
+cleanup.use_blocks_only_for_return_and_throw=false
+cleanup.use_lambda=true
+cleanup.use_parentheses_in_expressions=false
+cleanup.use_this_for_non_static_field_access=false
+cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+cleanup.use_this_for_non_static_method_access=false
+cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+cleanup.use_type_arguments=false
+cleanup_profile=_Papyrus
+cleanup_settings_version=2
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Papyrus
+formatter_settings_version=12
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+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\="true" 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 */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * Constructor.\n *\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) ${year} CEA LIST and others.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License 2.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-2.0/\n *\n * SPDX-License-Identifier: EPL-2.0\n *\n * Contributors\:\n * CEA LIST - Initial API and implementation\n * \n *****************************************************************************/\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 *\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 * ${see_to_overridden}\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${see_to_target}\n *\n * ${tags}\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\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" 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}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${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=true
+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=true
+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=false
+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=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+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=true
+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=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+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=true
+sp_cleanup.remove_redundant_modifiers=false
+sp_cleanup.remove_redundant_type_arguments=true
+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=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=true
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+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=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.pde.api.tools.prefs b/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.pde.api.tools.prefs
new file mode 100755
index 00000000000..b2260f87129
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/.settings/org.eclipse.pde.api.tools.prefs
@@ -0,0 +1,104 @@
+ANNOTATION_ELEMENT_TYPE_ADDED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error
+ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error
+API_USE_SCAN_FIELD_SEVERITY=Error
+API_USE_SCAN_METHOD_SEVERITY=Error
+API_USE_SCAN_TYPE_SEVERITY=Error
+CLASS_ELEMENT_TYPE_ADDED_FIELD=Warning
+CLASS_ELEMENT_TYPE_ADDED_METHOD=Error
+CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error
+CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error
+CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error
+CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error
+ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error
+ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error
+ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+FIELD_ELEMENT_TYPE_ADDED_VALUE=Warning
+FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error
+FIELD_ELEMENT_TYPE_CHANGED_VALUE=Warning
+FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error
+FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error
+ILLEGAL_EXTEND=Warning
+ILLEGAL_IMPLEMENT=Warning
+ILLEGAL_INSTANTIATE=Warning
+ILLEGAL_OVERRIDE=Warning
+ILLEGAL_REFERENCE=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_DEFAULT_METHOD=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Ignore
+INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+INVALID_ANNOTATION=Ignore
+INVALID_JAVADOC_TAG=Ignore
+INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Ignore
+LEAK_EXTEND=Warning
+LEAK_FIELD_DECL=Warning
+LEAK_IMPLEMENT=Warning
+LEAK_METHOD_PARAM=Warning
+LEAK_METHOD_RETURN_TYPE=Warning
+METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error
+METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+MISSING_EE_DESCRIPTIONS=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error
+UNUSED_PROBLEM_FILTERS=Warning
+automatically_removed_unused_problem_filters=Enabled
+changed_execution_env=Warning
+eclipse.preferences.version=1
+incompatible_api_component_version=Warning
+incompatible_api_component_version_include_major_without_breaking_change=Disabled
+incompatible_api_component_version_include_minor_without_api_change=Disabled
+incompatible_api_component_version_report_major_without_breaking_change=Error
+incompatible_api_component_version_report_minor_without_api_change=Error
+invalid_since_tag_version=Error
+malformed_since_tag=Error
+missing_since_tag=Error
+report_api_breakage_when_major_version_incremented=Disabled
+report_resolution_errors_api_component=Warning
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/META-INF/MANIFEST.MF b/plugins/emf/org.eclipse.papyrus.emf.ui/META-INF/MANIFEST.MF
new file mode 100755
index 00000000000..5784464e327
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,25 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %Bundle-Name
+Bundle-SymbolicName: org.eclipse.papyrus.emf.ui;singleton:=true
+Bundle-Version: 1.0.0.qualifier
+Bundle-Vendor: %Bundle-Vendor
+Automatic-Module-Name: org.eclipse.papyrus.emf.ui
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
+Require-Bundle: org.eclipse.ui;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.core.runtime;bundle-version="[3.15.0,4.0.0)",
+ org.eclipse.core.resources;bundle-version="[3.13.0,4.0.0)",
+ org.eclipse.emf.ecore;bundle-version="[2.16.0,3.0.0)",
+ org.eclipse.emf.edit;bundle-version="[2.14.0,3.0.0)",
+ org.eclipse.emf.edit.ui;bundle-version="[2.16.0,3.0.0)",
+ org.eclipse.ui.views.properties.tabbed;bundle-version="[3.8.0,4.0.0)"
+Export-Package: org.eclipse.papyrus.emf.ui.comparators,
+ org.eclipse.papyrus.emf.ui.contentproviders,
+ org.eclipse.papyrus.emf.ui.converters,
+ org.eclipse.papyrus.emf.ui.editor.factories,
+ org.eclipse.papyrus.emf.ui.properties,
+ org.eclipse.papyrus.emf.ui.providers.labelproviders,
+ org.eclipse.papyrus.emf.ui.validators
+Bundle-Activator: org.eclipse.papyrus.emf.ui.Activator
+Bundle-Description: %Bundle-Description
+Bundle-ActivationPolicy: lazy
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/OSGI-INF/l10n/bundle.properties b/plugins/emf/org.eclipse.papyrus.emf.ui/OSGI-INF/l10n/bundle.properties
new file mode 100755
index 00000000000..b299908b4a5
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/OSGI-INF/l10n/bundle.properties
@@ -0,0 +1,4 @@
+#Properties file for org.eclipse.papyrus.emf.ui
+Bundle-Vendor = Eclipse Modeling Project
+Bundle-Name = Papyrus EMF UI
+Bundle-Description = This plugin provides useful code to edit EMF Models via the standard EMF Property View. This plugin must only depends on EMF, EMF-UI, some JFace code, eclipse properties code are allowed. This plugins must not depends on Papyrus plugins (or google, or, ...)
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/README b/plugins/emf/org.eclipse.papyrus.emf.ui/README
new file mode 100755
index 00000000000..442468f1d93
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/README
@@ -0,0 +1,4 @@
+This plugin provides code which must only be EMF/EMF-UI/EMF-Common dependent.
+Papyrus dependencies are forbidden.
+Others dependencies are forbidden.
+This plugin must not depend on google/guava/... \ No newline at end of file
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/about.html b/plugins/emf/org.eclipse.papyrus.emf.ui/about.html
new file mode 100755
index 00000000000..3e183aa78df
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/about.html
@@ -0,0 +1,28 @@
+<!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>November 30, 2017</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 2.0 (&quot;EPL&quot;). A copy of the EPL is available
+at <a href="https://www.eclipse.org/legal/epl-2.0/">https://www.eclipse.org/legal/epl-2.0/</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/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/comparators/ENamedElementComparator.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/comparators/ENamedElementComparator.java
new file mode 100755
index 00000000000..2521c98823d
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/comparators/ENamedElementComparator.java
@@ -0,0 +1,44 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.comparators;
+
+import java.util.Comparator;
+
+import org.eclipse.emf.ecore.ENamedElement;
+
+/**
+ * Comparator for ENamedElement
+ */
+public class ENamedElementComparator implements Comparator<ENamedElement> {
+
+ /**
+ * @see java.util.Comparator#compare(java.lang.Object, java.lang.Object)
+ *
+ * @param o1
+ * @param o2
+ * @return
+ */
+ @Override
+ public int compare(final ENamedElement o1, final ENamedElement o2) {
+ if (o1 != null && o2 != null) {
+ final String o1Name = null == o1.getName() ? "" : o1.getName(); //$NON-NLS-1$
+ final String o2Name = null == o2.getName() ? "" : o2.getName(); //$NON-NLS-1$
+ return o1Name.compareTo(o2Name);
+ }
+ return 0;
+ }
+
+} \ No newline at end of file
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/contentproviders/EcoreContentProvider.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/contentproviders/EcoreContentProvider.java
new file mode 100755
index 00000000000..f5b5a9290a2
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/contentproviders/EcoreContentProvider.java
@@ -0,0 +1,91 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.contentproviders;
+
+import java.util.Collection;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+
+/**
+ *
+ * Default Ecore content provider
+ *
+ */
+public class EcoreContentProvider implements ITreeContentProvider {
+
+ /**
+ *
+ * @see org.eclipse.jface.viewers.ITreeContentProvider#getElements(java.lang.Object)
+ *
+ * @param inputElement
+ * @return
+ */
+ @Override
+ public Object[] getElements(final Object inputElement) {
+ if (inputElement instanceof Collection<?>) {
+ return ((Collection<?>) inputElement).toArray();
+ }
+ if (null != inputElement) {
+ return new Object[] { inputElement };
+ }
+ return new Object[0];
+ }
+
+ /**
+ *
+ * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
+ *
+ * @param parentElement
+ * @return
+ */
+ @Override
+ public Object[] getChildren(final Object parentElement) {
+ if (parentElement instanceof EObject) {
+ return ((EObject) parentElement).eContents().toArray();
+ }
+ return new Object[0];
+ }
+
+ /**
+ *
+ * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
+ *
+ * @param element
+ * @return
+ */
+ @Override
+ public Object getParent(final Object element) {
+ if (element instanceof EObject) {
+ return ((EObject) element).eContainer();
+ }
+ return null;
+ }
+
+ /**
+ *
+ * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
+ *
+ * @param element
+ * @return
+ */
+ @Override
+ public boolean hasChildren(final Object element) {
+ return getChildren(element).length > 0;
+ }
+
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/converters/IDisplayConverter.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/converters/IDisplayConverter.java
new file mode 100755
index 00000000000..6ee80225724
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/converters/IDisplayConverter.java
@@ -0,0 +1,47 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.converters;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * This interface is used to convert a semantic value into a value displayed in a dialog (and vice versa)
+ */
+public interface IDisplayConverter {
+
+ /**
+ *
+ * @param canonicalValue
+ * the semantic value
+ * @param editedObject
+ * the edited object (can be used as context to be able to calculate the display value)
+ * @return
+ * the value to use to display in a dialog
+ */
+ public Object semanticToDisplayValue(final Object canonicalValue, final EObject editedObject);
+
+
+ /**
+ *
+ * @param displayValue
+ * the value displayed in a dialog
+ * @param editedObject
+ * the edited object (can be used as context to be able to calculate the display value)
+ * @return
+ * the semantic value
+ */
+ public Object displayToSemanticValue(final Object displayValue, final EObject editedObject);
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/converters/IdentityDisplayConverter.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/converters/IdentityDisplayConverter.java
new file mode 100755
index 00000000000..3bd551c9682
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/converters/IdentityDisplayConverter.java
@@ -0,0 +1,49 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.converters;
+
+import java.util.Collection;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * This converter returns the initial input without convert it.
+ */
+public final class IdentityDisplayConverter implements IDisplayConverter {
+
+ /**
+ * @see IDisplayConverter#semanticToDisplayValue(java.lang.Object, Collection)
+ *
+ * @param canonicalValue
+ * @return
+ */
+ @Override
+ public Object semanticToDisplayValue(final Object canonicalValue, final EObject editedObject) {
+ return canonicalValue;
+ }
+
+ /**
+ * @see IDisplayConverter#displayToSemanticValue(java.lang.Object)
+ *
+ * @param displayValue
+ * @return
+ */
+ @Override
+ public Object displayToSemanticValue(final Object displayValue, final EObject editedObject) {
+ return displayValue;
+ }
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/AbstractEStructuralFeatureDialogEditorFactory.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/AbstractEStructuralFeatureDialogEditorFactory.java
new file mode 100755
index 00000000000..231c4953aea
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/AbstractEStructuralFeatureDialogEditorFactory.java
@@ -0,0 +1,138 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.editor.factories;
+
+import java.util.Collection;
+
+import org.eclipse.core.runtime.Assert;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.ui.provider.EMFEditUIPropertyEditorFactory;
+import org.eclipse.jface.viewers.CellEditor;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.papyrus.emf.ui.converters.IDisplayConverter;
+import org.eclipse.papyrus.emf.ui.messages.Messages;
+import org.eclipse.papyrus.emf.ui.providers.labelproviders.DelegatingToEMFLabelProvider;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.dialogs.ISelectionStatusValidator;
+
+/**
+ * Abstract EditorFactory to use to edit an EReference with a dialog
+ */
+public abstract class AbstractEStructuralFeatureDialogEditorFactory extends EMFEditUIPropertyEditorFactory {
+
+ /**
+ * the feature for which this editor factory has been created
+ */
+ protected final EStructuralFeature editedFeature;
+
+ /**
+ * the label provider to use in the dialog
+ */
+ protected ILabelProvider labelProvider;
+
+ /**
+ * Constructor.
+ *
+ * @param propertyEditorFactoryURI
+ */
+ public AbstractEStructuralFeatureDialogEditorFactory(final URI propertyEditorFactoryURI, final EStructuralFeature editedFeature) {
+ super(propertyEditorFactoryURI);
+ this.editedFeature = editedFeature;
+ }
+
+ /**
+ * @see org.eclipse.emf.edit.ui.provider.EMFEditUIPropertyEditorFactory#createEditor(java.lang.Object, org.eclipse.emf.edit.provider.IItemPropertyDescriptor, org.eclipse.swt.widgets.Composite)
+ *
+ * @param object
+ * @param propertyDescriptor
+ * @param composite
+ * @return
+ */
+ @Override
+ public final CellEditor createEditor(final Object object, final IItemPropertyDescriptor itemPropertyDescriptor, final Composite composite) {
+ if (!itemPropertyDescriptor.canSetProperty(object)) {
+ return null;
+ }
+ Assert.isTrue(itemPropertyDescriptor.getFeature(object) == this.editedFeature, NLS.bind("The edited feature is {0} instead of {1}.", itemPropertyDescriptor.getFeature(object), this.editedFeature)); //$NON-NLS-1$
+ Assert.isTrue(object instanceof EObject, "The edited object is not an EObject"); //$NON-NLS-1$
+ final EObject editedEObject = (EObject) object;
+ final CustomExtendedDialogCellEditor cellEditor = new CustomExtendedDialogCellEditor(composite, getOrCreateLabelProvider(), itemPropertyDescriptor, editedEObject, this.editedFeature);
+ cellEditor.setDialogInput(getDialogInput(editedEObject));
+ configureCellEditor(object, cellEditor);
+ return cellEditor;
+ }
+
+
+ /**
+ * This method must be overridden to define these fields:
+ * <ul>
+ * <li>dialog title</li>
+ * <li>dialog message</li>
+ * <li>{@link ISelectionStatusValidator}</li>
+ * <li>@link {@link IDisplayConverter} (not mandatory, see {@link CustomExtendedDialogCellEditor#openDialogBox(org.eclipse.swt.widgets.Control) documentation}</li>
+ * <li></li>
+ * <ul>
+ *
+ * @param editedObject
+ * the edited object
+ * @param cellEditor
+ * the cell editor to configure
+ */
+ protected void configureCellEditor(final Object editedObject, final CustomExtendedDialogCellEditor cellEditor) {
+ cellEditor.setDialogTitle(getDialogTitle());
+ if (this.editedFeature.isMany()) {
+ cellEditor.setDialogMessage(NLS.bind(Messages.AbstractEStructuralFeatureDialogEditorFactory_SelectOneOrSeveral, this.editedFeature.getEType().getName()));
+ } else {
+ cellEditor.setDialogMessage(NLS.bind(Messages.AbstractEStructuralFeatureDialogEditorFactory_SelectOne, this.editedFeature.getEType().getName()));
+ }
+ }
+
+ /**
+ *
+ * @return
+ * the dialog title to use
+ */
+ protected String getDialogTitle() {
+ return NLS.bind(Messages.AbstractEStructuralFeatureDialogEditorFactory_PapyrusDialogTitle, this.editedFeature.getEContainingClass().getName(), this.editedFeature.getName());
+ }
+
+ /**
+ * @param eobject
+ * the edited element
+ * @return
+ * the input to use for the dialog
+ */
+ protected abstract Collection<?> getDialogInput(final EObject editedElement);
+
+
+ /**
+ * Creates a new label provider when required, and return the previously created one if it exits
+ *
+ * @return
+ * the label provider to use in the dialog
+ */
+ public ILabelProvider getOrCreateLabelProvider() {
+ if (this.labelProvider == null) {
+ this.labelProvider = DelegatingToEMFLabelProvider.INSTANCE;
+ }
+ return this.labelProvider;
+ }
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/AbstractEcoreEReferenceDialogEditorFactory.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/AbstractEcoreEReferenceDialogEditorFactory.java
new file mode 100755
index 00000000000..d513d64555e
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/AbstractEcoreEReferenceDialogEditorFactory.java
@@ -0,0 +1,86 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.editor.factories;
+
+import java.util.Collection;
+import java.util.HashSet;
+import java.util.Iterator;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+
+/**
+ * An abstract class used to select EObject from an Ecore model
+ */
+public abstract class AbstractEcoreEReferenceDialogEditorFactory extends AbstractEStructuralFeatureDialogEditorFactory {
+
+ /**
+ * Constructor.
+ *
+ * @param propertyEditorFactoryURI
+ * @param editedFeature
+ */
+ public AbstractEcoreEReferenceDialogEditorFactory(final URI propertyEditorFactoryURI, final EStructuralFeature editedFeature) {
+ super(propertyEditorFactoryURI, editedFeature);
+ }
+
+
+ /**
+ * @see org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.edit.editors.factories.AbstractEStructuralFeatureDialogEditorFactory#getDialogInput()
+ *
+ * @return
+ */
+ @Override
+ protected Collection<?> getDialogInput(final EObject editedObject) {
+ Collection<EPackage> input = getEditedMetamodelEPackage(editedObject);
+
+ if (null == input || input.isEmpty()) {
+ input = new HashSet<EPackage>();
+ // in this case we cross the loaded resource to find EPackage in others resource
+ final ResourceSet set = editedObject.eResource().getResourceSet();
+ Iterator<Resource> iter = set.getResources().iterator();
+ while (iter.hasNext()) {
+ final Resource res = iter.next();
+ for (EObject eobject : res.getContents()) {
+ if (eobject instanceof EPackage) {
+ input.add((EPackage) eobject);
+ } else {
+ final EClass eClass = eobject.eClass();
+ if (null != eClass && null != eClass.getEPackage()) {
+ input.add(eClass.getEPackage());
+ }
+ }
+ }
+ }
+ }
+ return input;
+ }
+
+ /**
+ *
+ * @param editedObject
+ * the edited object
+ * @return
+ * the EPackage representing the metamodels we are editing. For example, if we are editing a PapyrusExpression in a Table context, we probably returns UMLPackage
+ */
+ protected abstract Collection<EPackage> getEditedMetamodelEPackage(final EObject editedObject);
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/AbtractSingleEAttributeReferenceEditorFactory.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/AbtractSingleEAttributeReferenceEditorFactory.java
new file mode 100755
index 00000000000..bc19a16846d
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/AbtractSingleEAttributeReferenceEditorFactory.java
@@ -0,0 +1,51 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.ui.editor.factories;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.ui.contentproviders.EcoreContentProvider;
+import org.eclipse.papyrus.emf.ui.validators.SingleEAttributeValidator;
+
+/**
+ * Abstract factory used to reference an EAttribute
+ */
+public abstract class AbtractSingleEAttributeReferenceEditorFactory extends AbstractEcoreEReferenceDialogEditorFactory {
+
+ /**
+ *
+ * Constructor.
+ *
+ */
+ public AbtractSingleEAttributeReferenceEditorFactory(final URI uri, final EStructuralFeature feature) {
+ super(uri, feature);
+ }
+
+
+ /**
+ * @param editedObject
+ * @param cellEditor
+ * @see org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.edit.editors.factories.AbstractEStructuralFeatureDialogEditorFactory#configureCellEditor(Object,
+ * org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.edit.editors.factories.CustomExtendedDialogCellEditor)
+ */
+ @Override
+ protected void configureCellEditor(final Object editedObject, final CustomExtendedDialogCellEditor cellEditor) {
+ super.configureCellEditor(editedObject, cellEditor);
+ cellEditor.setContentProvider(new EcoreContentProvider());
+ cellEditor.setSelectionStatusValidator(new SingleEAttributeValidator());
+ }
+
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/CustomExtendedDialogCellEditor.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/CustomExtendedDialogCellEditor.java
new file mode 100755
index 00000000000..567f8269df9
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/editor/factories/CustomExtendedDialogCellEditor.java
@@ -0,0 +1,280 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.ui.editor.factories;
+
+import java.util.Arrays;
+import java.util.Collection;
+
+import org.eclipse.core.runtime.Assert;
+import org.eclipse.emf.common.ui.celleditor.ExtendedDialogCellEditor;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.jface.viewers.ViewerComparator;
+import org.eclipse.jface.window.Window;
+import org.eclipse.papyrus.emf.ui.converters.IDisplayConverter;
+import org.eclipse.papyrus.emf.ui.converters.IdentityDisplayConverter;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.dialogs.ElementTreeSelectionDialog;
+import org.eclipse.ui.dialogs.ISelectionStatusValidator;
+
+/**
+ * Custom DialogCellEditor for PropertyView
+ */
+public class CustomExtendedDialogCellEditor extends ExtendedDialogCellEditor {
+
+ /**
+ * the content provider used by the dialog
+ */
+ private ITreeContentProvider contentProvider;
+
+ /**
+ * the input for the dialog
+ */
+ private Collection<?> dialogInput;
+
+ /**
+ * the validator used by the dialog
+ */
+ private ISelectionStatusValidator validator;
+
+ /**
+ * the edited property descriptor
+ */
+ private IItemPropertyDescriptor itemPropertyDescriptor;
+
+ /**
+ * the display converter used by the dialog
+ */
+ private IDisplayConverter displayConverter;
+
+ /**
+ * the title of the dialog
+ */
+ private String dialogTitle;
+
+ /**
+ * the message of the dialogF
+ */
+ private String dialogMessage;
+
+ /**
+ * the edited object
+ */
+ private EObject editedObject;
+
+ /**
+ * the edited feature
+ */
+ private EStructuralFeature editedFeature;
+
+ /**
+ * the image to use for the dialog;
+ */
+ private Image image;
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param composite
+ * the parent composite
+ * @param labelProvider
+ * the label provider to use for the CellEditor
+ * @param itemPropertyDescriptor
+ * the property descriptor
+ * @param editedObject
+ * the edited EObject
+ * @param editedFeature
+ * the edited feature of the EObject
+ */
+ public CustomExtendedDialogCellEditor(final Composite composite, final ILabelProvider labelProvider, final IItemPropertyDescriptor itemPropertyDescriptor, final EObject editedObject, final EStructuralFeature editedFeature) {
+ super(composite, labelProvider);
+ Assert.isNotNull(itemPropertyDescriptor);
+ this.itemPropertyDescriptor = itemPropertyDescriptor;
+ Assert.isNotNull(editedObject);
+ this.editedObject = editedObject;
+ Assert.isNotNull(editedFeature);
+ this.editedFeature = editedFeature;
+ }
+
+ /**
+ *
+ * @param dialogTitle
+ * the title of the dialog
+ */
+ public void setDialogTitle(final String dialogTitle) {
+ this.dialogTitle = dialogTitle;
+ }
+
+ /**
+ *
+ * @param dialogMessage
+ * the message to display in the dialog
+ */
+ public void setDialogMessage(final String dialogMessage) {
+ this.dialogMessage = dialogMessage;
+ }
+
+ /**
+ *
+ * @param contentProvider
+ * the content provider to use. It can't be <code>null</code>
+ */
+ public void setContentProvider(final ITreeContentProvider contentProvider) {
+ this.contentProvider = contentProvider;
+ }
+
+ /**
+ *
+ * @param displayConverter
+ * the display converter to use. It can't be <code>null</code>
+ */
+ public void setDisplayConverter(final IDisplayConverter displayConverter) {
+ this.displayConverter = displayConverter;
+ }
+
+ /**
+ *
+ * @param dialogInput
+ * the input used by the dialog. It must not be <code>null</code> or empty
+ */
+ public void setDialogInput(final Collection<?> dialogInput) {
+ this.dialogInput = dialogInput;
+ }
+
+ /**
+ *
+ * @param validator
+ * the validator to use
+ */
+ public void setSelectionStatusValidator(final ISelectionStatusValidator validator) {
+ this.validator = validator;
+ }
+
+ /**
+ *
+ * @param image
+ * the image to use for the dialog
+ */
+ public void setImage(final Image image) {
+ this.image = image;
+ }
+
+ /**
+ * Before calling this method, several fields must be initialized using these methods:
+ * <ul>
+ * <li>{@link #setContentProvider(ITreeContentProvider)} (mandatory)</li>
+ * <li>{@link #setDialogInput(Collection)} (mandatory)</li>
+ * <li>{@link #setSelectionStatusValidator(ISelectionStatusValidator)} (mandatory)</li>
+ * <li>{@link #setDialogMessage(String)}</li>
+ * <li>{@link #setDialogTitle(String)}</li>
+ * <li>{@link #setDisplayConverter(IDisplayConverter)} (by default we used the {@link IdentityDisplayConverter}</li>
+ * <li></li>
+ * </ul>
+ *
+ * @see org.eclipse.jface.viewers.DialogCellEditor#openDialogBox(org.eclipse.swt.widgets.Control)
+ *
+ * @param cellEditorWindow
+ * @return
+ * the selected element
+ */
+ @Override
+ protected Object openDialogBox(final Control cellEditorWindow) {
+ checkInput();
+ final ElementTreeSelectionDialog dialog = new ElementTreeSelectionDialog(Display.getDefault().getActiveShell(), this.labelProvider, this.contentProvider);
+ Object initialSelection = this.displayConverter.semanticToDisplayValue(editedObject.eGet(this.editedFeature), this.editedObject);
+ Object[] selectedValue = { initialSelection };
+
+ dialog.setSize(100, 50);
+ dialog.setInput(this.dialogInput);
+ if (null != this.validator) {
+ dialog.setValidator(this.validator);
+ }
+ dialog.setComparator(new ViewerComparator());
+ dialog.setAllowMultiple(isManyFeature());
+ dialog.setInitialSelections(selectedValue);
+ dialog.setTitle(this.dialogTitle);
+ dialog.setMessage(this.dialogMessage);
+ if (null != this.image) {
+ dialog.setImage(image);
+ }
+ int userResponse = dialog.open();
+ Object toReturn = null;
+ if (userResponse == Window.OK) {
+ final Object[] result = dialog.getResult();
+ if (result == null) {
+ toReturn = this.itemPropertyDescriptor.getPropertyValue(null);
+ } else {
+ if (this.editedFeature.isMany()) {
+ toReturn = Arrays.asList(result);
+ } else {
+ toReturn = result[0];
+ }
+ }
+ } else {
+ toReturn = this.itemPropertyDescriptor.getPropertyValue(editedObject);
+ }
+
+ toReturn = this.displayConverter.displayToSemanticValue(toReturn, this.editedObject);
+ return toReturn;
+ }
+
+ /**
+ * This method checks the required field of the class
+ */
+ private void checkInput() {
+ if (null == this.displayConverter) {
+ this.displayConverter = new IdentityDisplayConverter();
+ }
+ Assert.isNotNull(this.contentProvider, "The ITreeContentProvider has not been set"); //$NON-NLS-1$
+ Assert.isNotNull(this.dialogInput, "The dialog input is null"); //$NON-NLS-1$
+ Assert.isNotNull(this.validator, "The validator has not been set"); //$NON-NLS-1$
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.CellEditor#dispose()
+ *
+ */
+ @Override
+ public void dispose() {
+ super.dispose();
+ this.contentProvider = null;
+ this.dialogInput.clear();
+ this.dialogInput = null;
+ this.displayConverter = null;
+ this.editedFeature = null;
+ this.editedObject = null;
+ this.image = null;
+ this.itemPropertyDescriptor = null;
+ this.validator = null;
+ }
+
+ /**
+ *
+ * @return
+ * <code>true</code> if the edited feature is multi-valued
+ */
+ private boolean isManyFeature() {
+ return this.editedFeature.isMany();
+ }
+
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/messages/Messages.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/messages/Messages.java
new file mode 100755
index 00000000000..540861a40cd
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/messages/Messages.java
@@ -0,0 +1,36 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.ui.messages;
+
+import org.eclipse.osgi.util.NLS;
+
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.emf.ui.messages.messages"; //$NON-NLS-1$
+ public static String AbstractEStructuralFeatureDialogEditorFactory_PapyrusDialogTitle;
+ public static String AbstractEStructuralFeatureDialogEditorFactory_SelectOne;
+ public static String AbstractEStructuralFeatureDialogEditorFactory_SelectOneOrSeveral;
+ public static String AbstractSelectionStatusValidator_NoSelection;
+ public static String SingleEAttributeValidator_YouMustSelectOneEAttribute;
+ public static String SingleEClassValidator_YouMustSelectOneEClass;
+ public static String SingleEReferenceValidator_YouMustSelectOneEReference;
+ public static String SingleEStructuralFeatureValidator_YouMustSelectOneEStructuralFeature;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/messages/messages.properties b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/messages/messages.properties
new file mode 100755
index 00000000000..7afdf095bb6
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/messages/messages.properties
@@ -0,0 +1,8 @@
+AbstractEStructuralFeatureDialogEditorFactory_PapyrusDialogTitle=Papyrus - Edit {0}#{1}
+AbstractEStructuralFeatureDialogEditorFactory_SelectOne=Select one {0}
+AbstractEStructuralFeatureDialogEditorFactory_SelectOneOrSeveral=Select one or several {0}
+AbstractSelectionStatusValidator_NoSelection=No Selection
+SingleEAttributeValidator_YouMustSelectOneEAttribute=You must select one EAttribute.
+SingleEClassValidator_YouMustSelectOneEClass=You must select one EClass.
+SingleEReferenceValidator_YouMustSelectOneEReference=You must select one EReference.
+SingleEStructuralFeatureValidator_YouMustSelectOneEStructuralFeature=You must select one EStructureFeature
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/properties/AbstractEObjectAdvancedPropertySection.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/properties/AbstractEObjectAdvancedPropertySection.java
new file mode 100755
index 00000000000..1708f7607c1
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/properties/AbstractEObjectAdvancedPropertySection.java
@@ -0,0 +1,100 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.properties;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory.Descriptor;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory.Descriptor.Registry;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvider;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.IWorkbenchPart;
+import org.eclipse.ui.views.properties.IPropertySource;
+import org.eclipse.ui.views.properties.tabbed.AdvancedPropertySection;
+
+/**
+ * Property Section used to contribute to Papyrus Advanced Property View for EObject selection
+ */
+public abstract class AbstractEObjectAdvancedPropertySection extends AdvancedPropertySection {
+
+ /**
+ * Constructor.
+ *
+ */
+ public AbstractEObjectAdvancedPropertySection() {
+ super();
+ }
+
+ /**
+ * @see org.eclipse.ui.views.properties.tabbed.AdvancedPropertySection#setInput(org.eclipse.ui.IWorkbenchPart, org.eclipse.jface.viewers.ISelection)
+ *
+ * @param part
+ * @param selection
+ */
+ @Override
+ public final void setInput(final IWorkbenchPart part, final ISelection selection) {
+ if (selection instanceof IStructuredSelection && ((IStructuredSelection) selection).getFirstElement() instanceof EObject) {
+ final EObject selectedElement = (EObject) ((IStructuredSelection) selection).getFirstElement();
+ final Registry registry = ComposedAdapterFactory.Descriptor.Registry.INSTANCE;
+ final Collection<Object> types = new ArrayList<>();
+ types.add(selectedElement.eClass().getEPackage());
+ types.add(IItemPropertySource.class);
+
+
+ // we look for the adapter factory registered for the metamodel of the object we want to edit
+ final Descriptor descriptor = registry.getDescriptor(types);
+ final AdapterFactory adapterFactory = descriptor.createAdapterFactory();
+ this.page.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory) {
+
+ /**
+ * @see org.eclipse.emf.edit.ui.provider.AdapterFactoryContentProvider#createPropertySource(java.lang.Object, org.eclipse.emf.edit.provider.IItemPropertySource)
+ *
+ * @param object
+ * @param itemPropertySource
+ * @return
+ */
+ @Override
+ protected IPropertySource createPropertySource(final Object object, final IItemPropertySource itemPropertySource) {
+ return AbstractEObjectAdvancedPropertySection.this.createPropertySource(object, itemPropertySource);
+ }
+ });
+ } else {
+ this.page.setPropertySourceProvider(null);
+ }
+
+ super.setInput(part, selection);
+ }
+
+
+ /**
+ *
+ * @param object
+ * an object
+ * @param itemPropertySource
+ * the item property source
+ * @return
+ * the created {@link IPropertySource}
+ */
+ public abstract IPropertySource createPropertySource(final Object object, final IItemPropertySource itemPropertySource);
+
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/properties/CustomPropertyDescriptor.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/properties/CustomPropertyDescriptor.java
new file mode 100755
index 00000000000..b62d8b1cb05
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/properties/CustomPropertyDescriptor.java
@@ -0,0 +1,67 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.properties;
+
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.ui.provider.PropertyDescriptor;
+import org.eclipse.jface.viewers.CellEditor;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.papyrus.emf.ui.editor.factories.AbstractEStructuralFeatureDialogEditorFactory;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * Property Descriptor used to contribute to the Papyrus Advanced Property View
+ */
+public class CustomPropertyDescriptor extends PropertyDescriptor {
+
+ /**
+ * the factory to use to edit the property
+ */
+ private final AbstractEStructuralFeatureDialogEditorFactory factory;
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * @param itemPropertyDescriptor
+ */
+ public CustomPropertyDescriptor(final Object object, final IItemPropertyDescriptor itemPropertyDescriptor, final AbstractEStructuralFeatureDialogEditorFactory factory) {
+ super(object, itemPropertyDescriptor);
+ this.factory = factory;
+ }
+
+ /**
+ * @see org.eclipse.emf.edit.ui.provider.PropertyDescriptor#createPropertyEditor(org.eclipse.swt.widgets.Composite)
+ *
+ * @param composite
+ * @return
+ */
+ @Override
+ public final CellEditor createPropertyEditor(final Composite composite) {
+ return this.factory.createEditor(this.object, this.itemPropertyDescriptor, composite);
+ }
+
+ /**
+ * @see org.eclipse.emf.edit.ui.provider.PropertyDescriptor#getLabelProvider()
+ *
+ * @return
+ */
+ @Override
+ public final ILabelProvider getLabelProvider() {
+ return this.factory.getOrCreateLabelProvider();
+ }
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/providers/labelproviders/DelegatingToEMFLabelProvider.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/providers/labelproviders/DelegatingToEMFLabelProvider.java
new file mode 100755
index 00000000000..7fa1816b72a
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/providers/labelproviders/DelegatingToEMFLabelProvider.java
@@ -0,0 +1,208 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.providers.labelproviders;
+
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory.Descriptor;
+import org.eclipse.emf.edit.provider.ComposedAdapterFactory.Descriptor.Registry;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.ui.provider.ExtendedImageRegistry;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.jface.viewers.ILabelProviderListener;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ * This label provider delegated the text and the image calculus to the Ecore IItemLabelProvider of the EObject when we found it.
+ */
+public class DelegatingToEMFLabelProvider implements ILabelProvider {
+
+ /**
+ * the separator between field of the label
+ */
+ protected static final String FIELD_LABEL_SEPARATOR = " - "; //$NON-NLS-1$
+
+ /**
+ * The separator used to calculate the label for collection
+ */
+ protected static final String MULTI_VALUE_SEPARATOR = ",";//$NON-NLS-1$
+
+ /**
+ * Singleton of this label provider class
+ */
+ public static final DelegatingToEMFLabelProvider INSTANCE = new DelegatingToEMFLabelProvider();
+
+ /**
+ *
+ * Constructor.
+ * This constructor is protected to allow to extend this class
+ */
+ protected DelegatingToEMFLabelProvider() {
+ // nothing to do
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.IBaseLabelProvider#addListener(org.eclipse.jface.viewers.ILabelProviderListener)
+ *
+ * @param listener
+ */
+ @Override
+ public void addListener(ILabelProviderListener listener) {
+ // useless
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.IBaseLabelProvider#dispose()
+ *
+ */
+ @Override
+ public void dispose() {
+ // useless
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.IBaseLabelProvider#isLabelProperty(java.lang.Object, java.lang.String)
+ *
+ * @param element
+ * @param property
+ * @return
+ */
+ @Override
+ public boolean isLabelProperty(Object element, String property) {
+ // useless
+ return false;
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.IBaseLabelProvider#removeListener(org.eclipse.jface.viewers.ILabelProviderListener)
+ *
+ * @param listener
+ */
+ @Override
+ public void removeListener(ILabelProviderListener listener) {
+ // nothing to do
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.ILabelProvider#getImage(java.lang.Object)
+ *
+ * @param element
+ * @return
+ */
+ @Override
+ public Image getImage(Object element) {
+ if (element instanceof EObject) {
+ final IItemLabelProvider lp = getSubLabelProvider((EObject) element);
+ if (null != lp) {
+ Object im = lp.getImage(element);
+ im = ExtendedImageRegistry.INSTANCE.getImage(im);
+ if (im instanceof Image) {
+ return (Image) im;
+ }
+ }
+ }
+ return null;
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.ILabelProvider#getText(java.lang.Object)
+ *
+ * @param element
+ * @return
+ */
+ @Override
+ public String getText(final Object element) {
+ if (null == element) {
+ return ""; //$NON-NLS-1$
+ }
+ if (element instanceof String) {
+ return (String) element;
+ }
+
+ if (element instanceof Collection<?>) {
+ final StringBuilder builder = new StringBuilder();
+ final Iterator<?> iter = ((Collection<?>) element).iterator();
+ while (iter.hasNext()) {
+ builder.append(getText(iter.next()));
+ if (iter.hasNext()) {
+ builder.append(MULTI_VALUE_SEPARATOR);
+ builder.append(" "); //$NON-NLS-1$
+ }
+ }
+ return builder.toString();
+ }
+
+ if (element instanceof EObject) {
+ final EObject eobject = (EObject) element;
+ final IItemLabelProvider subProvider = getSubLabelProvider(eobject);
+ if (null != subProvider) {
+ String label = subProvider.getText(eobject);
+
+ if (hideEClassNameInTextCalculus()) {
+ // the default emf label provider add the Metaclass name in the label, we will remove it
+ final String eClassName = eobject.eClass().getName();
+ final StringBuilder eClassBuilderName = new StringBuilder();
+ eClassBuilderName.append("<"); //$NON-NLS-1$
+ eClassBuilderName.append(eClassName);
+ eClassBuilderName.append("> "); //$NON-NLS-1$
+ label = label.replaceAll(eClassBuilderName.toString(), ""); //$NON-NLS-1$
+ }
+ return label;
+ }
+ }
+
+ return element.toString();
+ }
+
+ /**
+ *
+ * @return
+ * <code>true</code> if the EClass name must be removed from the TextCalculus
+ */
+ protected boolean hideEClassNameInTextCalculus() {
+ return true;
+ }
+
+ /**
+ *
+ * @param eobject
+ * an eobejct
+ * @return
+ * the IITemLabelProvider declared for this EObject
+ */
+ protected final IItemLabelProvider getSubLabelProvider(final EObject eobject) {
+ final Registry registry = ComposedAdapterFactory.Descriptor.Registry.INSTANCE;
+ final Collection<Object> types = new ArrayList<>();
+ types.add(eobject.eClass().getEPackage());
+ types.add(IItemLabelProvider.class);
+ final Descriptor descriptor = registry.getDescriptor(types);
+ if (null != descriptor) {// can be null asking for the label of a stereotype instance (DynamicEObjectImpl)
+ final AdapterFactory adapterFactory = descriptor.createAdapterFactory();
+ final Adapter adapt = adapterFactory.adapt(eobject, IItemLabelProvider.class);
+ if (adapt instanceof IItemLabelProvider) {
+ return (IItemLabelProvider) adapt;
+ }
+ }
+ return null;
+ }
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/AbstractSelectionStatusValidator.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/AbstractSelectionStatusValidator.java
new file mode 100755
index 00000000000..af039786156
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/AbstractSelectionStatusValidator.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.validators;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.papyrus.emf.ui.messages.Messages;
+import org.eclipse.ui.dialogs.ISelectionStatusValidator;
+
+/**
+ * Abstract selection validator
+ */
+public abstract class AbstractSelectionStatusValidator implements ISelectionStatusValidator {
+
+ /**
+ * the name of the plugin (EMF Edit plugin doesn't provide ID)
+ */
+ private static final String PLUGIN_NAME = "org.eclipse.papyrus.emf.ui"; //$NON-NLS-1$
+
+ /**
+ * No Selection message
+ */
+ protected static final String NO_SELECTION = Messages.AbstractSelectionStatusValidator_NoSelection;
+
+ /**
+ *
+ * @param errorMessage
+ * the error message, can be <code>null</code> of empty
+ * @return
+ * an {@link IStatus#ERROR} if the message is defined or an {@link IStatus#OK} if the message is <code>null</code> of emepty
+ */
+ protected final IStatus buildIStatus(final String errorMessage) {
+ return new Status(errorMessage.isEmpty() ? IStatus.OK : IStatus.ERROR, PLUGIN_NAME, errorMessage);
+ }
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/OKSelectionStatusValidator.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/OKSelectionStatusValidator.java
new file mode 100755
index 00000000000..ab04824b938
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/OKSelectionStatusValidator.java
@@ -0,0 +1,36 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.validators;
+
+import org.eclipse.core.runtime.IStatus;
+
+/**
+ * A validator which always return a Status.OK
+ */
+public class OKSelectionStatusValidator extends AbstractSelectionStatusValidator {
+
+ /**
+ * @see org.eclipse.ui.dialogs.ISelectionStatusValidator#validate(java.lang.Object[])
+ *
+ * @param selection
+ * @return
+ */
+ @Override
+ public IStatus validate(Object[] selection) {
+ return buildIStatus(""); //$NON-NLS-1$
+ }
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEAttributeValidator.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEAttributeValidator.java
new file mode 100755
index 00000000000..fc3a7b83b5d
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEAttributeValidator.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.validators;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.papyrus.emf.ui.messages.Messages;
+
+/**
+ * Validator for single selection of EAttribute
+ */
+public final class SingleEAttributeValidator extends AbstractSelectionStatusValidator {
+
+ /**
+ * @see org.eclipse.ui.dialogs.ISelectionStatusValidator#validate(java.lang.Object[])
+ *
+ * @param selection
+ * @return
+ */
+ @Override
+ public IStatus validate(Object[] selection) {
+ String errorMessage = ""; //$NON-NLS-1$
+ if (selection.length == 0) {
+ errorMessage = NO_SELECTION;
+ } else {
+ final Object firstSelection = selection[0];
+ if (false == firstSelection instanceof EAttribute || selection.length != 1) {
+ errorMessage = Messages.SingleEAttributeValidator_YouMustSelectOneEAttribute;
+ }
+ }
+
+ return buildIStatus(errorMessage);
+ }
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEClassValidator.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEClassValidator.java
new file mode 100755
index 00000000000..963e0bd9aaa
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEClassValidator.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.validators;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.emf.ui.messages.Messages;
+
+/**
+ * Validator for single selection of EClass
+ */
+public final class SingleEClassValidator extends AbstractSelectionStatusValidator {
+
+ /**
+ * @see org.eclipse.ui.dialogs.ISelectionStatusValidator#validate(java.lang.Object[])
+ *
+ * @param selection
+ * @return
+ */
+ @Override
+ public IStatus validate(Object[] selection) {
+ String errorMessage = ""; //$NON-NLS-1$
+ if (selection.length == 0) {
+ errorMessage = NO_SELECTION;
+ } else {
+ final Object firstSelection = selection[0];
+ if (false == firstSelection instanceof EClass || selection.length != 1) {
+ errorMessage = Messages.SingleEClassValidator_YouMustSelectOneEClass;
+ }
+ }
+
+ return buildIStatus(errorMessage);
+ }
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEReferenceValidator.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEReferenceValidator.java
new file mode 100755
index 00000000000..df90239222e
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEReferenceValidator.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.validators;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.papyrus.emf.ui.messages.Messages;
+
+/**
+ * Validator for single selection of EReference
+ */
+public final class SingleEReferenceValidator extends AbstractSelectionStatusValidator {
+
+ /**
+ * @see org.eclipse.ui.dialogs.ISelectionStatusValidator#validate(java.lang.Object[])
+ *
+ * @param selection
+ * @return
+ */
+ @Override
+ public IStatus validate(Object[] selection) {
+ String errorMessage = ""; //$NON-NLS-1$
+ if (selection.length == 0) {
+ errorMessage = NO_SELECTION;
+ } else {
+ final Object firstSelection = selection[0];
+ if (false == firstSelection instanceof EReference || selection.length != 1) {
+ errorMessage = Messages.SingleEReferenceValidator_YouMustSelectOneEReference;
+ }
+ }
+
+ return buildIStatus(errorMessage);
+ }
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEStructuralFeatureValidator.java b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEStructuralFeatureValidator.java
new file mode 100755
index 00000000000..4fbc1496fef
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/api/org/eclipse/papyrus/emf/ui/validators/SingleEStructuralFeatureValidator.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.emf.ui.validators;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.ui.messages.Messages;
+
+/**
+ * Validator for single selection of {@link EStructuralFeature}
+ */
+public final class SingleEStructuralFeatureValidator extends AbstractSelectionStatusValidator {
+
+ /**
+ * @see org.eclipse.ui.dialogs.ISelectionStatusValidator#validate(java.lang.Object[])
+ *
+ * @param selection
+ * @return
+ */
+ @Override
+ public IStatus validate(Object[] selection) {
+ String errorMessage = ""; //$NON-NLS-1$
+ if (selection.length == 0) {
+ errorMessage = NO_SELECTION;
+ } else {
+ final Object firstSelection = selection[0];
+ if (false == firstSelection instanceof EStructuralFeature || selection.length != 1) {
+ errorMessage = Messages.SingleEStructuralFeatureValidator_YouMustSelectOneEStructuralFeature;
+ }
+ }
+
+ return buildIStatus(errorMessage);
+ }
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/build.properties b/plugins/emf/org.eclipse.papyrus.emf.ui/build.properties
new file mode 100755
index 00000000000..e664f3bbb4c
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/build.properties
@@ -0,0 +1,21 @@
+# Copyright (c) 2019 CEA LIST.
+#
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+# Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+
+source.. = src/,\
+ api/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ about.html,\
+ OSGI-INF/
+src.includes = about.html
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/pom.xml b/plugins/emf/org.eclipse.papyrus.emf.ui/pom.xml
new file mode 100755
index 00000000000..72c29ee49a0
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/pom.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.eclipse.papyrus</groupId>
+ <artifactId>org.eclipse.papyrus-emf</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </parent>
+ <artifactId>org.eclipse.papyrus.emf.ui</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+</project>
diff --git a/plugins/emf/org.eclipse.papyrus.emf.ui/src/org/eclipse/papyrus/emf/ui/Activator.java b/plugins/emf/org.eclipse.papyrus.emf.ui/src/org/eclipse/papyrus/emf/ui/Activator.java
new file mode 100755
index 00000000000..4363da6c88d
--- /dev/null
+++ b/plugins/emf/org.eclipse.papyrus.emf.ui/src/org/eclipse/papyrus/emf/ui/Activator.java
@@ -0,0 +1,67 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.emf.ui;
+
+
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle
+ */
+public class Activator extends AbstractUIPlugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.emf.ui"; //$NON-NLS-1$
+
+ // The shared instance
+ private static Activator plugin;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+}
diff --git a/plugins/emf/org.eclipse.papyrus.emf/README b/plugins/emf/org.eclipse.papyrus.emf/README
index 427495df824..f658f3cfa93 100755
--- a/plugins/emf/org.eclipse.papyrus.emf/README
+++ b/plugins/emf/org.eclipse.papyrus.emf/README
@@ -1 +1,2 @@
-This plugin provides code which must only be EMF dependent. Others dependencies are forbidden. \ No newline at end of file
+This plugin provides code which must only be EMF dependent. Others dependencies are forbidden.
+This plugin must not depend on google/guava/... \ No newline at end of file
diff --git a/plugins/emf/org.eclipse.papyrus.emf/pom.xml b/plugins/emf/org.eclipse.papyrus.emf/pom.xml
index 32f8c1bdbd5..66a39ae8136 100755
--- a/plugins/emf/org.eclipse.papyrus.emf/pom.xml
+++ b/plugins/emf/org.eclipse.papyrus.emf/pom.xml
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
diff --git a/plugins/emf/pom.xml b/plugins/emf/pom.xml
index 527296e2370..ea7586927fe 100644
--- a/plugins/emf/pom.xml
+++ b/plugins/emf/pom.xml
@@ -1,18 +1,21 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<project>
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>org.eclipse.papyrus-emf</artifactId>
<packaging>pom</packaging>
<parent>
- <groupId>org.eclipse.papyrus</groupId>
- <artifactId>org.eclipse.papyrus.plugins</artifactId>
- <version>0.0.1-SNAPSHOT</version>
- </parent>
+ <groupId>org.eclipse.papyrus</groupId>
+ <artifactId>org.eclipse.papyrus.plugins</artifactId>
+ <version>0.0.1-SNAPSHOT</version>
+ </parent>
<name>Papyrus EMF</name>
<description>Container of the common custom EMF APIs without others dependencies</description>
<modules>
<!-- This is separate because it combines Table and Diagram Layer APIs -->
<module>org.eclipse.papyrus.emf</module>
+ <module>org.eclipse.papyrus.emf.ui</module>
</modules>
</project>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/.classpath b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/.classpath
index 858bac421b8..50aae142c50 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/.classpath
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/.classpath
@@ -1,7 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src-gen"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src-gen"/>
+ <classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/.settings/org.eclipse.jdt.core.prefs b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/.settings/org.eclipse.jdt.core.prefs
index e62259848fc..49ce3e32edf 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/.settings/org.eclipse.jdt.core.prefs
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/.settings/org.eclipse.jdt.core.prefs
@@ -1,17 +1,18 @@
eclipse.preferences.version=1
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.targetPlatform=1.8
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.compliance=1.8
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.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.release=disabled
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.8
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
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
@@ -19,17 +20,20 @@ org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_c
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_bitwise_operator=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_logical_operator=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_multiplicative_operator=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_string_concatenation=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
@@ -115,11 +119,12 @@ 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_additive_operator=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_bitwise_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
@@ -150,6 +155,8 @@ 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_logical_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=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
@@ -174,13 +181,17 @@ 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_relational_operator=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_shift_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=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_bitwise_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
@@ -228,6 +239,8 @@ org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do no
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_logical_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=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
@@ -264,9 +277,12 @@ org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not inser
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_relational_operator=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_shift_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=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
@@ -292,6 +308,10 @@ 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=false
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_additive_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
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 620c43398e5..7f6ba63b729 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
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.papyrus.infra.emf.expressions.edit;singleton:=true
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.1.0.qualifier
Bundle-ClassPath: .
Bundle-Activator: org.eclipse.papyrus.infra.emf.expressions.provider.ExpressionsEditPlugin$Implementation$Activator
Bundle-Vendor: %providerName
@@ -11,9 +11,13 @@ 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;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.papyrus.infra.emf.expressions;bundle-version="[1.1.0,2.0.0)",
org.eclipse.emf.edit;bundle-version="[2.12.0,3.0.0)",
- org.eclipse.emf.ecore.edit;bundle-version="[2.9.0,3.0.0)"
+ org.eclipse.emf.ecore;bundle-version="[2.17.0,3.0.0)",
+ org.eclipse.emf.ecore.edit;bundle-version="[2.12.0,3.0.0)",
+ org.eclipse.emf.edit.ui;bundle-version="[2.16.0,3.0.0)",
+ org.eclipse.ui.views.properties.tabbed;bundle-version="[3.8.0,4.0.0)",
+ org.eclipse.papyrus.emf.ui;bundle-version="[1.0.0,2.0.0)"
Import-Package: org.osgi.framework
Bundle-ActivationPolicy: lazy
Bundle-Description: %Bundle-Description
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/build.properties b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/build.properties
index a8fcf3f68af..56ec35b5119 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/build.properties
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/build.properties
@@ -20,3 +20,4 @@ bin.includes = .,\
jars.compile.order = .
source.. = src-gen/
output.. = bin/
+src.includes = about.html
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/custom_icons/full/obj16/SingleEAttributeValueEqualityExpression.gif b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/custom_icons/full/obj16/SingleEAttributeValueEqualityExpression.gif
new file mode 100755
index 00000000000..1a82b9ffe66
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/custom_icons/full/obj16/SingleEAttributeValueEqualityExpression.gif
Binary files differ
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/icons/full/obj16/SingleEAttributeValueEqualityExpression.gif b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/icons/full/obj16/SingleEAttributeValueEqualityExpression.gif
new file mode 100755
index 00000000000..1a82b9ffe66
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/icons/full/obj16/SingleEAttributeValueEqualityExpression.gif
Binary files differ
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 9292dd33dff..b9135641d11 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
@@ -53,4 +53,10 @@ _UI_ReferenceBooleanExpression_referencedExpression_feature = Referenced Express
_UI_Unknown_feature = Unspecified
-Bundle-Description = This plugin provides Icons and item providers for the EMF Expressions Framework. \ No newline at end of file
+Bundle-Description = This plugin provides Icons and item providers for the EMF Expressions Framework.
+_UI_SingleEAttributeValueEquality_type = Single EAttribute Value Equality
+_UI_SingleEAttributeValueEquality_eAttribute_feature = EAttribute
+_UI_SingleEAttributeValueEquality_expectedValue_feature = Expected Value
+_UI_SingleEAttributeValueEqualityExpression_type = Single EAttribute Value Equality Expression
+_UI_SingleEAttributeValueEqualityExpression_eAttribute_feature = EAttribute
+_UI_SingleEAttributeValueEqualityExpression_expectedValue_feature = Expected Value
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/plugin.xml b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/plugin.xml
index 8e1006020b7..2f720c4628c 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/plugin.xml
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/plugin.xml
@@ -45,5 +45,35 @@
org.eclipse.emf.edit.provider.IItemLabelProvider
org.eclipse.emf.edit.provider.IItemPropertySource"/>
</extension>
+ <extension
+ point="org.eclipse.ui.views.properties.tabbed.propertySections">
+ <propertySections
+ contributorId="TreeOutlinePage">
+ <propertySection
+ class="org.eclipse.papyrus.infra.emf.expressions.edit.internal.properties.EMFExpressionPropertySection"
+ filter="org.eclipse.papyrus.infra.emf.expressions.edit.internal.properties.EMFExpressionSectionFilter"
+ id="org.eclipse.papyrus.infra.emf.expression.properties.propertySection"
+ tab="advanced">
+ <input
+ type="java.lang.Object">
+ </input>
+ </propertySection>
+ </propertySections>
+ </extension>
+ <extension
+ point="org.eclipse.emf.edit.propertyEditorFactories">
+ <factory
+ class="org.eclipse.papyrus.infra.emf.expressions.edit.internal.editor.factories.SingleEAttributeReferenceExpressionEditorFactory"
+ uri="http://www.eclipse.org/papyrus/expressions/singleEAttributeReference">
+ </factory>
+ <factory
+ class="org.eclipse.papyrus.infra.emf.expressions.edit.internal.editor.factories.SingleBooleanExpressionReferenceEditorFactory"
+ uri="http://www.eclipse.org/papyrus/expressions/singleBooleanExpressionReference">
+ </factory>
+ <factory
+ class="org.eclipse.papyrus.infra.emf.expressions.edit.internal.editor.factories.MultiBooleanExpressionsReferenceEditorFactory"
+ uri="http://www.eclipse.org/papyrus/expressions/multiBooleanExpressionsReference">
+ </factory>
+ </extension>
</plugin>
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 b2ca3c968dd..3106591c8a6 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
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -8,7 +9,7 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.emf.expressions.edit</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.1.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.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/AndExpressionItemProvider.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/AndExpressionItemProvider.java
index b10b3d2430a..b936ef6e22d 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/AndExpressionItemProvider.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/AndExpressionItemProvider.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.provider;
@@ -22,6 +21,7 @@ import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EStructuralFeature;
@@ -148,7 +148,8 @@ public class AndExpressionItemProvider
true,
null,
null,
- null));
+ null,
+ URI.createURI("http://www.eclipse.org/papyrus/expressions/multiBooleanExpressionsReference")));
}
/**
@@ -215,7 +216,7 @@ public class AndExpressionItemProvider
getString("_UI_AndExpression_type") : //$NON-NLS-1$
getString("_UI_AndExpression_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
}
-
+
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
@@ -280,6 +281,11 @@ public class AndExpressionItemProvider
(createChildParameter
(BooleanExpressionsPackage.Literals.AND_EXPRESSION__OWNED_EXPRESSIONS,
BooleanExpressionsFactory.eINSTANCE.createReferenceBooleanExpression()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (BooleanExpressionsPackage.Literals.AND_EXPRESSION__OWNED_EXPRESSIONS,
+ BooleanExpressionsFactory.eINSTANCE.createSingleEAttributeValueEqualityExpression()));
}
/**
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/BooleanExpressionsItemProviderAdapterFactory.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/BooleanExpressionsItemProviderAdapterFactory.java
index 734c5821b3a..b9377abf194 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/BooleanExpressionsItemProviderAdapterFactory.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/BooleanExpressionsItemProviderAdapterFactory.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.provider;
@@ -241,11 +240,35 @@ public class BooleanExpressionsItemProviderAdapterFactory extends BooleanExpress
}
/**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SingleEAttributeValueEqualityExpressionItemProvider singleEAttributeValueEqualityExpressionItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Adapter createSingleEAttributeValueEqualityExpressionAdapter() {
+ if (singleEAttributeValueEqualityExpressionItemProvider == null) {
+ singleEAttributeValueEqualityExpressionItemProvider = new SingleEAttributeValueEqualityExpressionItemProvider(this);
+ }
+
+ return singleEAttributeValueEqualityExpressionItemProvider;
+ }
+
+ /**
* This returns the root adapter factory that contains this factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public ComposeableAdapterFactory getRootAdapterFactory() {
return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
}
@@ -256,6 +279,7 @@ public class BooleanExpressionsItemProviderAdapterFactory extends BooleanExpress
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
this.parentAdapterFactory = parentAdapterFactory;
}
@@ -331,6 +355,7 @@ public class BooleanExpressionsItemProviderAdapterFactory extends BooleanExpress
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void addListener(INotifyChangedListener notifyChangedListener) {
changeNotifier.addListener(notifyChangedListener);
}
@@ -341,6 +366,7 @@ public class BooleanExpressionsItemProviderAdapterFactory extends BooleanExpress
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void removeListener(INotifyChangedListener notifyChangedListener) {
changeNotifier.removeListener(notifyChangedListener);
}
@@ -351,6 +377,7 @@ public class BooleanExpressionsItemProviderAdapterFactory extends BooleanExpress
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void fireNotifyChanged(Notification notification) {
changeNotifier.fireNotifyChanged(notification);
@@ -365,6 +392,7 @@ public class BooleanExpressionsItemProviderAdapterFactory extends BooleanExpress
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void dispose() {
if (orExpressionItemProvider != null) orExpressionItemProvider.dispose();
if (andExpressionItemProvider != null) andExpressionItemProvider.dispose();
@@ -372,6 +400,7 @@ public class BooleanExpressionsItemProviderAdapterFactory extends BooleanExpress
if (literalTrueExpressionItemProvider != null) literalTrueExpressionItemProvider.dispose();
if (literalFalseExpressionItemProvider != null) literalFalseExpressionItemProvider.dispose();
if (referenceBooleanExpressionItemProvider != null) referenceBooleanExpressionItemProvider.dispose();
+ if (singleEAttributeValueEqualityExpressionItemProvider != null) singleEAttributeValueEqualityExpressionItemProvider.dispose();
}
}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/LiteralFalseExpressionItemProvider.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/LiteralFalseExpressionItemProvider.java
index 6280f8dc63b..9c8fd26fa51 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/LiteralFalseExpressionItemProvider.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/LiteralFalseExpressionItemProvider.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.provider;
@@ -159,7 +158,7 @@ public class LiteralFalseExpressionItemProvider
getString("_UI_LiteralFalseExpression_type") : //$NON-NLS-1$
getString("_UI_LiteralFalseExpression_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
}
-
+
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/LiteralTrueExpressionItemProvider.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/LiteralTrueExpressionItemProvider.java
index 53f487b1c52..0b939468fa7 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/LiteralTrueExpressionItemProvider.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/LiteralTrueExpressionItemProvider.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.provider;
@@ -159,7 +158,7 @@ public class LiteralTrueExpressionItemProvider
getString("_UI_LiteralTrueExpression_type") : //$NON-NLS-1$
getString("_UI_LiteralTrueExpression_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
}
-
+
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/NotExpressionItemProvider.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/NotExpressionItemProvider.java
index 391c10af539..1b32fbdc57d 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/NotExpressionItemProvider.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/NotExpressionItemProvider.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.provider;
@@ -22,6 +21,7 @@ import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EStructuralFeature;
@@ -148,7 +148,8 @@ public class NotExpressionItemProvider
true,
null,
null,
- null));
+ null,
+ URI.createURI("http://www.eclipse.org/papyrus/expressions/singleBooleanExpressionReference")));
}
/**
@@ -215,7 +216,7 @@ public class NotExpressionItemProvider
getString("_UI_NotExpression_type") : //$NON-NLS-1$
getString("_UI_NotExpression_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
}
-
+
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
@@ -280,6 +281,11 @@ public class NotExpressionItemProvider
(createChildParameter
(BooleanExpressionsPackage.Literals.NOT_EXPRESSION__OWNED_EXPRESSION,
BooleanExpressionsFactory.eINSTANCE.createReferenceBooleanExpression()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (BooleanExpressionsPackage.Literals.NOT_EXPRESSION__OWNED_EXPRESSION,
+ BooleanExpressionsFactory.eINSTANCE.createSingleEAttributeValueEqualityExpression()));
}
/**
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/OrExpressionItemProvider.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/OrExpressionItemProvider.java
index 544e4cc89b3..8e023554595 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/OrExpressionItemProvider.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/OrExpressionItemProvider.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.provider;
@@ -22,6 +21,7 @@ import org.eclipse.emf.common.notify.AdapterFactory;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EStructuralFeature;
@@ -148,7 +148,8 @@ public class OrExpressionItemProvider
true,
null,
null,
- null));
+ null,
+ URI.createURI("http://www.eclipse.org/papyrus/expressions/multiBooleanExpressionsReference")));
}
/**
@@ -215,7 +216,7 @@ public class OrExpressionItemProvider
getString("_UI_OrExpression_type") : //$NON-NLS-1$
getString("_UI_OrExpression_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
}
-
+
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
@@ -280,6 +281,11 @@ public class OrExpressionItemProvider
(createChildParameter
(BooleanExpressionsPackage.Literals.OR_EXPRESSION__OWNED_EXPRESSIONS,
BooleanExpressionsFactory.eINSTANCE.createReferenceBooleanExpression()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (BooleanExpressionsPackage.Literals.OR_EXPRESSION__OWNED_EXPRESSIONS,
+ BooleanExpressionsFactory.eINSTANCE.createSingleEAttributeValueEqualityExpression()));
}
/**
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/ReferenceBooleanExpressionItemProvider.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/ReferenceBooleanExpressionItemProvider.java
index 332f3d4da03..327a8713a9d 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/ReferenceBooleanExpressionItemProvider.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/ReferenceBooleanExpressionItemProvider.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.provider;
@@ -182,7 +181,7 @@ public class ReferenceBooleanExpressionItemProvider
getString("_UI_ReferenceBooleanExpression_type") : //$NON-NLS-1$
getString("_UI_ReferenceBooleanExpression_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
}
-
+
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/SingleEAttributeValueEqualityExpressionItemProvider.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/SingleEAttributeValueEqualityExpressionItemProvider.java
new file mode 100755
index 00000000000..f0855ce55fd
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/provider/SingleEAttributeValueEqualityExpressionItemProvider.java
@@ -0,0 +1,255 @@
+/**
+ * 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.ResourceLocator;
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IChildCreationExtender;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+import org.eclipse.papyrus.infra.emf.expressions.ExpressionsPackage;
+
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.BooleanExpressionsPackage;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SingleEAttributeValueEqualityExpressionItemProvider
+ extends ItemProviderAdapter
+ implements
+ IEditingDomainItemProvider,
+ IStructuredItemContentProvider,
+ ITreeItemContentProvider,
+ IItemLabelProvider,
+ IItemPropertySource {
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public SingleEAttributeValueEqualityExpressionItemProvider(AdapterFactory adapterFactory) {
+ super(adapterFactory);
+ }
+
+ /**
+ * This returns the property descriptors for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
+ if (itemPropertyDescriptors == null) {
+ super.getPropertyDescriptors(object);
+
+ addNamePropertyDescriptor(object);
+ addDescriptionPropertyDescriptor(object);
+ addEAttributePropertyDescriptor(object);
+ addExpectedValuePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Name feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addNamePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_IBasicExpressionElement_name_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_IBasicExpressionElement_name_feature", "_UI_IBasicExpressionElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ ExpressionsPackage.Literals.IBASIC_EXPRESSION_ELEMENT__NAME,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the Description feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addDescriptionPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_IBasicExpressionElement_description_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_IBasicExpressionElement_description_feature", "_UI_IBasicExpressionElement_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ ExpressionsPackage.Literals.IBASIC_EXPRESSION_ELEMENT__DESCRIPTION,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This adds a property descriptor for the EAttribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addEAttributePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_SingleEAttributeValueEqualityExpression_eAttribute_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_SingleEAttributeValueEqualityExpression_eAttribute_feature", "_UI_SingleEAttributeValueEqualityExpression_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ BooleanExpressionsPackage.Literals.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EATTRIBUTE,
+ true,
+ false,
+ true,
+ null,
+ null,
+ null,
+ URI.createURI("http://www.eclipse.org/papyrus/expressions/singleEAttributeReference")));
+ }
+
+ /**
+ * This adds a property descriptor for the Expected Value feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected void addExpectedValuePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add
+ (createItemPropertyDescriptor
+ (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+ getResourceLocator(),
+ getString("_UI_SingleEAttributeValueEqualityExpression_expectedValue_feature"), //$NON-NLS-1$
+ getString("_UI_PropertyDescriptor_description", "_UI_SingleEAttributeValueEqualityExpression_expectedValue_feature", "_UI_SingleEAttributeValueEqualityExpression_type"), //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+ BooleanExpressionsPackage.Literals.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EXPECTED_VALUE,
+ true,
+ false,
+ false,
+ ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+ null,
+ null));
+ }
+
+ /**
+ * This returns SingleEAttributeValueEqualityExpression.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/SingleEAttributeValueEqualityExpression")); //$NON-NLS-1$
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected boolean shouldComposeCreationImage() {
+ return true;
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((SingleEAttributeValueEqualityExpression)object).getName();
+ return label == null || label.length() == 0 ?
+ getString("_UI_SingleEAttributeValueEqualityExpression_type") : //$NON-NLS-1$
+ getString("_UI_SingleEAttributeValueEqualityExpression_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
+ }
+
+
+ /**
+ * This handles model notifications by calling {@link #updateChildren} to update any cached
+ * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void notifyChanged(Notification notification) {
+ updateChildren(notification);
+
+ switch (notification.getFeatureID(SingleEAttributeValueEqualityExpression.class)) {
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__NAME:
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__DESCRIPTION:
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EXPECTED_VALUE:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ }
+ super.notifyChanged(notification);
+ }
+
+ /**
+ * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+ * that can be created under this object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+ super.collectNewChildDescriptors(newChildDescriptors, object);
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return ((IChildCreationExtender)adapterFactory).getResourceLocator();
+ }
+
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionCatalogItemProvider.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionCatalogItemProvider.java
index 80cf43fd10d..4d3de82bac8 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionCatalogItemProvider.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionCatalogItemProvider.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.provider;
@@ -191,7 +190,7 @@ public class ExpressionCatalogItemProvider
getString("_UI_ExpressionCatalog_type") : //$NON-NLS-1$
getString("_UI_ExpressionCatalog_type") + " " + label; //$NON-NLS-1$ //$NON-NLS-2$
}
-
+
/**
* This handles model notifications by calling {@link #updateChildren} to update any cached
@@ -256,6 +255,11 @@ public class ExpressionCatalogItemProvider
(createChildParameter
(ExpressionsPackage.Literals.EXPRESSION_CATALOG__EXPRESSIONS,
BooleanExpressionsFactory.eINSTANCE.createReferenceBooleanExpression()));
+
+ newChildDescriptors.add
+ (createChildParameter
+ (ExpressionsPackage.Literals.EXPRESSION_CATALOG__EXPRESSIONS,
+ BooleanExpressionsFactory.eINSTANCE.createSingleEAttributeValueEqualityExpression()));
}
/**
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionsEditPlugin.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionsEditPlugin.java
index c828dc30be6..d5a9f8fa745 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionsEditPlugin.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionsEditPlugin.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.provider;
@@ -19,6 +18,7 @@ import org.eclipse.emf.common.EMFPlugin;
import org.eclipse.emf.common.util.ResourceLocator;
import org.eclipse.emf.ecore.provider.EcoreEditPlugin;
+
import org.osgi.framework.BundleActivator;
/**
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionsItemProviderAdapterFactory.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionsItemProviderAdapterFactory.java
index 260e53dd67b..3a0ea5fa7bf 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionsItemProviderAdapterFactory.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src-gen/org/eclipse/papyrus/infra/emf/expressions/provider/ExpressionsItemProviderAdapterFactory.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.provider;
@@ -129,6 +128,7 @@ public class ExpressionsItemProviderAdapterFactory extends ExpressionsAdapterFac
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public ComposeableAdapterFactory getRootAdapterFactory() {
return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
}
@@ -139,6 +139,7 @@ public class ExpressionsItemProviderAdapterFactory extends ExpressionsAdapterFac
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
this.parentAdapterFactory = parentAdapterFactory;
}
@@ -214,6 +215,7 @@ public class ExpressionsItemProviderAdapterFactory extends ExpressionsAdapterFac
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void addListener(INotifyChangedListener notifyChangedListener) {
changeNotifier.addListener(notifyChangedListener);
}
@@ -224,6 +226,7 @@ public class ExpressionsItemProviderAdapterFactory extends ExpressionsAdapterFac
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void removeListener(INotifyChangedListener notifyChangedListener) {
changeNotifier.removeListener(notifyChangedListener);
}
@@ -234,6 +237,7 @@ public class ExpressionsItemProviderAdapterFactory extends ExpressionsAdapterFac
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void fireNotifyChanged(Notification notification) {
changeNotifier.fireNotifyChanged(notification);
@@ -248,6 +252,7 @@ public class ExpressionsItemProviderAdapterFactory extends ExpressionsAdapterFac
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void dispose() {
if (expressionCatalogItemProvider != null) expressionCatalogItemProvider.dispose();
}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/editor/factories/MultiBooleanExpressionsReferenceEditorFactory.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/editor/factories/MultiBooleanExpressionsReferenceEditorFactory.java
new file mode 100755
index 00000000000..ff5f5b9cea2
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/editor/factories/MultiBooleanExpressionsReferenceEditorFactory.java
@@ -0,0 +1,78 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.emf.expressions.edit.internal.editor.factories;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.ui.contentproviders.EcoreContentProvider;
+import org.eclipse.papyrus.emf.ui.converters.IdentityDisplayConverter;
+import org.eclipse.papyrus.emf.ui.editor.factories.AbstractEStructuralFeatureDialogEditorFactory;
+import org.eclipse.papyrus.emf.ui.editor.factories.CustomExtendedDialogCellEditor;
+import org.eclipse.papyrus.infra.emf.expressions.catalog.ExpressionCatalogRegistry;
+import org.eclipse.papyrus.infra.emf.expressions.edit.internal.validators.MultiBooleanExpressionValidator;
+
+/**
+ *
+ * EditorFactory for Multi BooleanExpression references
+ *
+ */
+public class MultiBooleanExpressionsReferenceEditorFactory extends AbstractEStructuralFeatureDialogEditorFactory {
+
+ private static final URI SELF_URI = URI.createURI("http://www.eclipse.org/papyrus/expressions/multiBooleanExpressionsReference"); //$NON-NLS-1$
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param editedFeature
+ * the edited feature
+ */
+ public MultiBooleanExpressionsReferenceEditorFactory(final EStructuralFeature editedFeature) {
+ super(SELF_URI, editedFeature);
+ }
+
+
+ /**
+ * @see org.eclipse.papyrus.infra.emf.expressions.edit.editors.factories.duplicated.AbstractEStructuralFeatureDialogEditorFactory#configureCellEditor(java.lang.Object,
+ * org.eclipse.papyrus.infra.emf.expressions.edit.editors.factories.duplicated.CustomExtendedDialogCellEditor)
+ *
+ * @param editedObject
+ * @param cellEditor
+ */
+ @Override
+ protected void configureCellEditor(Object editedObject, CustomExtendedDialogCellEditor cellEditor) {
+ super.configureCellEditor(editedObject, cellEditor);
+ cellEditor.setContentProvider(new EcoreContentProvider());
+ cellEditor.setDisplayConverter(new IdentityDisplayConverter());
+ cellEditor.setSelectionStatusValidator(new MultiBooleanExpressionValidator());
+
+ }
+
+ /**
+ * @see org.eclipse.papyrus.infra.emf.expressions.edit.editors.factories.duplicated.AbstractEStructuralFeatureDialogEditorFactory#getDialogInput(org.eclipse.emf.ecore.EObject)
+ *
+ * @param editedElement
+ * @return
+ */
+ @Override
+ protected Collection<?> getDialogInput(final EObject editedElement) {
+ return ExpressionCatalogRegistry.INSTANCE.getAllRegisteredCatalog();
+ }
+
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/editor/factories/SingleBooleanExpressionReferenceEditorFactory.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/editor/factories/SingleBooleanExpressionReferenceEditorFactory.java
new file mode 100755
index 00000000000..3e098368192
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/editor/factories/SingleBooleanExpressionReferenceEditorFactory.java
@@ -0,0 +1,81 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.infra.emf.expressions.edit.internal.editor.factories;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.papyrus.emf.ui.contentproviders.EcoreContentProvider;
+import org.eclipse.papyrus.emf.ui.converters.IdentityDisplayConverter;
+import org.eclipse.papyrus.emf.ui.editor.factories.AbstractEStructuralFeatureDialogEditorFactory;
+import org.eclipse.papyrus.emf.ui.editor.factories.CustomExtendedDialogCellEditor;
+import org.eclipse.papyrus.infra.emf.expressions.catalog.ExpressionCatalogRegistry;
+import org.eclipse.papyrus.infra.emf.expressions.edit.internal.validators.SingleBooleanExpressionValidator;
+
+/**
+ *
+ * This editor allows to edit a single reference to an expression
+ *
+ */
+public class SingleBooleanExpressionReferenceEditorFactory extends AbstractEStructuralFeatureDialogEditorFactory {
+
+ /**
+ * The URI of this editor
+ */
+ private static final URI SELF_URI = URI.createURI("http://www.eclipse.org/papyrus/expressions/singleBooleanExpressionReference"); //$NON-NLS-1$
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param editedFeature
+ * the edited feature
+ */
+ public SingleBooleanExpressionReferenceEditorFactory(final EStructuralFeature editedFeature) {
+ super(SELF_URI, editedFeature);
+ }
+
+
+ /**
+ * @see org.eclipse.papyrus.infra.emf.expressions.edit.editors.factories.duplicated.AbstractEStructuralFeatureDialogEditorFactory#configureCellEditor(java.lang.Object,
+ * org.eclipse.papyrus.infra.emf.expressions.edit.editors.factories.duplicated.CustomExtendedDialogCellEditor)
+ *
+ * @param editedObject
+ * @param cellEditor
+ */
+ @Override
+ protected void configureCellEditor(Object editedObject, CustomExtendedDialogCellEditor cellEditor) {
+ super.configureCellEditor(editedObject, cellEditor);
+ cellEditor.setContentProvider(new EcoreContentProvider());
+ cellEditor.setDisplayConverter(new IdentityDisplayConverter());
+ cellEditor.setSelectionStatusValidator(new SingleBooleanExpressionValidator());
+
+ }
+
+ /**
+ * @see org.eclipse.papyrus.infra.emf.expressions.edit.editors.factories.duplicated.AbstractEStructuralFeatureDialogEditorFactory#getDialogInput(org.eclipse.emf.ecore.EObject)
+ *
+ * @param editedElement
+ * @return
+ */
+ @Override
+ protected Collection<?> getDialogInput(final EObject editedElement) {
+ return ExpressionCatalogRegistry.INSTANCE.getAllRegisteredCatalog();
+ }
+
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/editor/factories/SingleEAttributeReferenceExpressionEditorFactory.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/editor/factories/SingleEAttributeReferenceExpressionEditorFactory.java
new file mode 100755
index 00000000000..3a2fb9032e8
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/editor/factories/SingleEAttributeReferenceExpressionEditorFactory.java
@@ -0,0 +1,62 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.edit.internal.editor.factories;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.emf.ui.editor.factories.AbtractSingleEAttributeReferenceEditorFactory;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.BooleanExpressionsPackage;
+
+/**
+ *
+ * This editor allows to edit the EAttribute of an Expression
+ *
+ */
+public class SingleEAttributeReferenceExpressionEditorFactory extends AbtractSingleEAttributeReferenceEditorFactory {
+
+ /**
+ * The URI of this editor
+ */
+ private static final URI SELF_URI = URI.createURI("http://www.eclipse.org/papyrus/expressions/singleEAttributeReference"); //$NON-NLS-1$
+
+ /**
+ *
+ * Constructor.
+ *
+ */
+ public SingleEAttributeReferenceExpressionEditorFactory() {
+ super(SELF_URI, BooleanExpressionsPackage.eINSTANCE.getSingleEAttributeValueEqualityExpression_EAttribute());
+ }
+
+ /**
+ * @see org.eclipse.papyrus.emf.ui.editor.factories.AbstractEcoreEReferenceDialogEditorFactory#getEditedMetamodelEPackage(org.eclipse.emf.ecore.EObject)
+ *
+ * @param editedObject
+ * @return
+ */
+ @Override
+ protected Collection<EPackage> getEditedMetamodelEPackage(final EObject editedObject) {
+ // Expression framework is reused in several context and never alone. So we are not able to know on which metamodel we are running.
+ return null;
+ }
+
+
+
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/messages/Messages.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/messages/Messages.java
new file mode 100755
index 00000000000..dceddaed0f0
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/messages/Messages.java
@@ -0,0 +1,35 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.edit.internal.messages;
+
+import org.eclipse.osgi.util.NLS;
+
+/**
+ * @author VL222926
+ *
+ */
+public class Messages extends NLS {
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.infra.emf.expressions.edit.messages.messages"; //$NON-NLS-1$
+ public static String ManyBooleanExpressionValidator_YouMustSelectOneOrSeveralBooleanExpression;
+ public static String SingleBooleanExpressionValidator_YouMustSelectOneBooleanExpression;
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/messages/messages.properties b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/messages/messages.properties
new file mode 100755
index 00000000000..983e9afcfa3
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/messages/messages.properties
@@ -0,0 +1,2 @@
+ManyBooleanExpressionValidator_YouMustSelectOneOrSeveralBooleanExpression=You must select one or several Boolean Expression
+SingleBooleanExpressionValidator_YouMustSelectOneBooleanExpression=You must select one Boolean Expression
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/properties/EMFExpressionPropertySection.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/properties/EMFExpressionPropertySection.java
new file mode 100755
index 00000000000..23be751ef66
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/properties/EMFExpressionPropertySection.java
@@ -0,0 +1,40 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.edit.internal.properties;
+
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.papyrus.emf.ui.properties.AbstractEObjectAdvancedPropertySection;
+import org.eclipse.ui.views.properties.IPropertySource;
+
+/**
+ * PropertySection for EMF Expression
+ *
+ */
+public class EMFExpressionPropertySection extends AbstractEObjectAdvancedPropertySection {
+
+ /**
+ *
+ * @see org.eclipse.papyrus.model2doc.integration.emf.documentstructuretemplate.properties.sections.AbstractEObjectAdvancedPropertySection#createPropertySource(java.lang.Object, org.eclipse.emf.edit.provider.IItemPropertySource)
+ *
+ * @param object
+ * @param itemPropertySource
+ * @return
+ */
+ @Override
+ public IPropertySource createPropertySource(final Object object, final IItemPropertySource itemPropertySource) {
+ return new EMFExpressionPropertySource(object, itemPropertySource);
+ }
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/properties/EMFExpressionPropertySource.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/properties/EMFExpressionPropertySource.java
new file mode 100755
index 00000000000..a3952f540d2
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/properties/EMFExpressionPropertySource.java
@@ -0,0 +1,71 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.edit.internal.properties;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.ui.provider.PropertySource;
+import org.eclipse.papyrus.emf.ui.editor.factories.AbstractEStructuralFeatureDialogEditorFactory;
+import org.eclipse.papyrus.emf.ui.properties.CustomPropertyDescriptor;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.BooleanExpressionsPackage;
+import org.eclipse.papyrus.infra.emf.expressions.edit.internal.editor.factories.MultiBooleanExpressionsReferenceEditorFactory;
+import org.eclipse.papyrus.infra.emf.expressions.edit.internal.editor.factories.SingleBooleanExpressionReferenceEditorFactory;
+import org.eclipse.papyrus.infra.emf.expressions.edit.internal.editor.factories.SingleEAttributeReferenceExpressionEditorFactory;
+import org.eclipse.ui.views.properties.IPropertyDescriptor;
+
+/**
+ * The {@link PropertySource} used to provide a better edition way for some properties of the EMF Expressions
+ */
+public class EMFExpressionPropertySource extends PropertySource {
+
+ /**
+ * Constructor.
+ *
+ * @param object
+ * @param itemPropertySource
+ */
+ public EMFExpressionPropertySource(final Object object, final IItemPropertySource itemPropertySource) {
+ super(object, itemPropertySource);
+ }
+
+ /**
+ * @see org.eclipse.emf.edit.ui.provider.PropertySource#createPropertyDescriptor(org.eclipse.emf.edit.provider.IItemPropertyDescriptor)
+ *
+ * @param itemPropertyDescriptor
+ * @return
+ */
+ @Override
+ protected IPropertyDescriptor createPropertyDescriptor(final IItemPropertyDescriptor itemPropertyDescriptor) {
+ final EStructuralFeature f = (EStructuralFeature) itemPropertyDescriptor.getFeature(this.object);
+ AbstractEStructuralFeatureDialogEditorFactory editorFactory = null;
+ if (f == BooleanExpressionsPackage.eINSTANCE.getAndExpression_ReferencedExpressions()
+ || f == BooleanExpressionsPackage.eINSTANCE.getOrExpression_ReferencedExpressions()) {
+ editorFactory = new MultiBooleanExpressionsReferenceEditorFactory(f);
+ }
+ if (f == BooleanExpressionsPackage.eINSTANCE.getNotExpression_ReferencedExpression()
+ || f == BooleanExpressionsPackage.eINSTANCE.getReferenceBooleanExpression_ReferencedExpression()) {
+ editorFactory = new SingleBooleanExpressionReferenceEditorFactory(f);
+ }
+ if (f == BooleanExpressionsPackage.eINSTANCE.getSingleEAttributeValueEqualityExpression_EAttribute()) {
+ editorFactory = new SingleEAttributeReferenceExpressionEditorFactory();
+ }
+ if (null != editorFactory) {
+ return new CustomPropertyDescriptor(this.object, itemPropertyDescriptor, editorFactory);
+ }
+ return super.createPropertyDescriptor(itemPropertyDescriptor);
+ }
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/properties/EMFExpressionSectionFilter.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/properties/EMFExpressionSectionFilter.java
new file mode 100755
index 00000000000..5127998dfce
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/properties/EMFExpressionSectionFilter.java
@@ -0,0 +1,49 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.edit.internal.properties;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.jface.viewers.IFilter;
+import org.eclipse.papyrus.infra.emf.expressions.ExpressionsPackage;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.BooleanExpressionsPackage;
+
+/**
+ *
+ * Section filter for EMF Expression Property View
+ *
+ */
+public class EMFExpressionSectionFilter implements IFilter {
+
+ /**
+ *
+ * @see org.eclipse.jface.viewers.IFilter#select(java.lang.Object)
+ *
+ * @param toTest
+ * @return
+ */
+ @Override
+ public boolean select(final Object toTest) {
+ if (toTest instanceof EObject) {
+ final EObject eobject = (EObject) toTest;
+ final EPackage ePackage = eobject.eClass().getEPackage();
+ return ePackage == BooleanExpressionsPackage.eINSTANCE || ePackage == ExpressionsPackage.eINSTANCE;
+ }
+ return false;
+ }
+
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/providers/ExpressionCatalogContentProvider.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/providers/ExpressionCatalogContentProvider.java
new file mode 100755
index 00000000000..80775d108f1
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/providers/ExpressionCatalogContentProvider.java
@@ -0,0 +1,88 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.edit.internal.providers;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.jface.viewers.IContentProvider;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.papyrus.infra.emf.expressions.ExpressionCatalog;
+import org.eclipse.papyrus.infra.emf.expressions.catalog.ExpressionCatalogRegistry;
+
+/**
+ * This ContentProvider allows to show the expressions owned by a catalog
+ *
+ */
+public class ExpressionCatalogContentProvider implements ITreeContentProvider, IContentProvider {
+
+ /** used to return empty value */
+ private final Object[] emptyArray = new Object[] {};
+
+
+ /**
+ * @see org.eclipse.jface.viewers.IStructuredContentProvider#getElements(java.lang.Object)
+ *
+ * @param inputElement
+ * @return
+ */
+ @Override
+ public Object[] getElements(Object inputElement) {
+ return ExpressionCatalogRegistry.INSTANCE.getAllRegisteredCatalog().toArray();
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
+ *
+ * @param parentElement
+ * @return
+ */
+ @Override
+ public Object[] getChildren(Object parentElement) {
+ if (parentElement instanceof ExpressionCatalog) {
+ return ((ExpressionCatalog) parentElement).getExpressions().toArray();
+ }
+ return this.emptyArray;
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
+ *
+ * @param element
+ * @return
+ */
+ @Override
+ public Object getParent(Object element) {
+ if (element instanceof EObject) {
+ return ((EObject) element).eContainer();
+ }
+ return null;
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
+ *
+ * @param element
+ * @return
+ */
+ @Override
+ public boolean hasChildren(Object element) {
+ if (element instanceof ExpressionCatalog) {
+ return !((ExpressionCatalog) element).getExpressions().isEmpty();
+ }
+ return false;
+ }
+
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/validators/MultiBooleanExpressionValidator.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/validators/MultiBooleanExpressionValidator.java
new file mode 100755
index 00000000000..c838cea6943
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/validators/MultiBooleanExpressionValidator.java
@@ -0,0 +1,52 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.edit.internal.validators;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.papyrus.emf.ui.validators.AbstractSelectionStatusValidator;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.IBooleanExpression;
+import org.eclipse.papyrus.infra.emf.expressions.edit.internal.messages.Messages;
+
+/**
+ * Validator for multi selection of BooleanExpression
+ */
+public final class MultiBooleanExpressionValidator extends AbstractSelectionStatusValidator {
+
+ /**
+ * @see org.eclipse.ui.dialogs.ISelectionStatusValidator#validate(java.lang.Object[])
+ *
+ * @param selection
+ * @return
+ */
+ @Override
+ public IStatus validate(Object[] selection) {
+ String errorMessage = ""; //$NON-NLS-1$
+ if (selection.length == 0) {
+ errorMessage = NO_SELECTION;
+ } else {
+ for (int i = 0; i < selection.length; i++) {
+ final Object current = selection[i];
+ if (false == current instanceof IBooleanExpression<?>) {
+ errorMessage = Messages.ManyBooleanExpressionValidator_YouMustSelectOneOrSeveralBooleanExpression;
+ }
+ }
+ }
+
+ return buildIStatus(errorMessage);
+ }
+
+}
+
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/validators/SingleBooleanExpressionValidator.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/validators/SingleBooleanExpressionValidator.java
new file mode 100755
index 00000000000..4e17ab1cbf4
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.edit/src/org/eclipse/papyrus/infra/emf/expressions/edit/internal/validators/SingleBooleanExpressionValidator.java
@@ -0,0 +1,50 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.edit.internal.validators;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.papyrus.emf.ui.validators.AbstractSelectionStatusValidator;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.IBooleanExpression;
+import org.eclipse.papyrus.infra.emf.expressions.edit.internal.messages.Messages;
+
+/**
+ * Validator for single selection of BooleanExpression
+ */
+public final class SingleBooleanExpressionValidator extends AbstractSelectionStatusValidator {
+
+ /**
+ * @see org.eclipse.ui.dialogs.ISelectionStatusValidator#validate(java.lang.Object[])
+ *
+ * @param selection
+ * @return
+ */
+ @Override
+ public IStatus validate(Object[] selection) {
+ String errorMessage = ""; //$NON-NLS-1$
+ if (selection.length == 0) {
+ errorMessage = NO_SELECTION;
+ } else {
+ final Object firstSelection = selection[0];
+ if (false == firstSelection instanceof IBooleanExpression<?> || selection.length != 1) {
+ errorMessage = Messages.SingleBooleanExpressionValidator_YouMustSelectOneBooleanExpression;
+ }
+ }
+
+ return buildIStatus(errorMessage);
+ }
+
+}
+
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/.classpath b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/.classpath
index 858bac421b8..26e67d64ad0 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/.classpath
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/.classpath
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src-gen"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src-gen"/>
<classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/.settings/org.eclipse.jdt.core.prefs b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/.settings/org.eclipse.jdt.core.prefs
index e62259848fc..49ce3e32edf 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/.settings/org.eclipse.jdt.core.prefs
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/.settings/org.eclipse.jdt.core.prefs
@@ -1,17 +1,18 @@
eclipse.preferences.version=1
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.targetPlatform=1.8
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.compliance=1.8
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.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.release=disabled
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.8
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
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
@@ -19,17 +20,20 @@ org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_c
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_bitwise_operator=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_logical_operator=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_multiplicative_operator=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_string_concatenation=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
@@ -115,11 +119,12 @@ 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_additive_operator=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_bitwise_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
@@ -150,6 +155,8 @@ 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_logical_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=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
@@ -174,13 +181,17 @@ 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_relational_operator=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_shift_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=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_bitwise_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
@@ -228,6 +239,8 @@ org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do no
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_logical_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=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
@@ -264,9 +277,12 @@ org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not inser
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_relational_operator=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_shift_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=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
@@ -292,6 +308,10 @@ 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=false
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_additive_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
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 57c4eb7a616..3293f172301 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
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.papyrus.infra.emf.expressions.editor;singleton:=true
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.1.0.qualifier
Bundle-ClassPath: .
Bundle-Activator: org.eclipse.papyrus.infra.emf.expressions.presentation.ExpressionsEditorPlugin$Implementation
Bundle-Vendor: %providerName
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/build.properties b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/build.properties
index dba3773797f..0b1a6d34e2f 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/build.properties
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/build.properties
@@ -20,3 +20,4 @@ bin.includes = .,\
jars.compile.order = .
source.. = src-gen/
output.. = bin
+src.includes = about.html
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 2e14c278969..998d96e9cc8 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
@@ -71,4 +71,5 @@ _UI_BooleanExpressionsEditor_label = BooleanExpressions Model Editor
_UI_BooleanExpressionsEditorFilenameDefaultBase = My
_UI_BooleanExpressionsEditorFilenameExtensions = booleanexpressions
-Bundle-Description = Editor for EMF Expressions. \ No newline at end of file
+Bundle-Description = Editor for EMF Expressions.
+_UI_Wizard_category = Example EMF Model Creation Wizards
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 406838c740d..ea5ea28c963 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
@@ -8,7 +8,7 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.emf.expressions.editor</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.1.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.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/presentation/BooleanExpressionsActionBarContributor.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/presentation/BooleanExpressionsActionBarContributor.java
index 9c4c59ce829..7e7b4d2a02d 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/presentation/BooleanExpressionsActionBarContributor.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/presentation/BooleanExpressionsActionBarContributor.java
@@ -199,6 +199,7 @@ public class BooleanExpressionsActionBarContributor
*/
@Override
public void contributeToToolBar(IToolBarManager toolBarManager) {
+ super.contributeToToolBar(toolBarManager);
toolBarManager.add(new Separator("booleanexpressions-settings")); //$NON-NLS-1$
toolBarManager.add(new Separator("booleanexpressions-additions")); //$NON-NLS-1$
}
@@ -235,6 +236,7 @@ public class BooleanExpressionsActionBarContributor
//
submenuManager.addMenuListener
(new IMenuListener() {
+ @Override
public void menuAboutToShow(IMenuManager menuManager) {
menuManager.updateAll(true);
}
@@ -282,6 +284,7 @@ public class BooleanExpressionsActionBarContributor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void selectionChanged(SelectionChangedEvent event) {
// Remove any menu items for old selection.
//
@@ -483,7 +486,7 @@ public class BooleanExpressionsActionBarContributor
if (contributionItem instanceof MenuManager) {
MenuManager submenuManager = (MenuManager)contributionItem;
if (submenuActions.containsKey(submenuManager.getMenuText())) {
- depopulateManager(submenuManager, submenuActions.get(contributionItem));
+ depopulateManager(submenuManager, submenuActions.get(submenuManager.getMenuText()));
manager.remove(contributionItem);
}
}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/presentation/BooleanExpressionsEditor.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/presentation/BooleanExpressionsEditor.java
index 77624261ab0..17c24a6d51f 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/presentation/BooleanExpressionsEditor.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/presentation/BooleanExpressionsEditor.java
@@ -77,6 +77,7 @@ import org.eclipse.swt.events.ControlEvent;
import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Menu;
import org.eclipse.swt.widgets.Tree;
@@ -281,6 +282,7 @@ public class BooleanExpressionsEditor
*/
protected IPartListener partListener =
new IPartListener() {
+ @Override
public void partActivated(IWorkbenchPart p) {
if (p instanceof ContentOutline) {
if (((ContentOutline)p).getCurrentPage() == contentOutlinePage) {
@@ -299,15 +301,19 @@ public class BooleanExpressionsEditor
handleActivate();
}
}
+ @Override
public void partBroughtToTop(IWorkbenchPart p) {
// Ignore.
}
+ @Override
public void partClosed(IWorkbenchPart p) {
// Ignore.
}
+ @Override
public void partDeactivated(IWorkbenchPart p) {
// Ignore.
}
+ @Override
public void partOpened(IWorkbenchPart p) {
// Ignore.
}
@@ -393,6 +399,7 @@ public class BooleanExpressionsEditor
dispatching = true;
getSite().getShell().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
dispatching = false;
updateProblemIndication();
@@ -422,6 +429,7 @@ public class BooleanExpressionsEditor
*/
protected IResourceChangeListener resourceChangeListener =
new IResourceChangeListener() {
+ @Override
public void resourceChanged(IResourceChangeEvent event) {
IResourceDelta delta = event.getDelta();
try {
@@ -430,6 +438,7 @@ public class BooleanExpressionsEditor
protected Collection<Resource> changedResources = new ArrayList<Resource>();
protected Collection<Resource> removedResources = new ArrayList<Resource>();
+ @Override
public boolean visit(IResourceDelta delta) {
if (delta.getResource().getType() == IResource.FILE) {
if (delta.getKind() == IResourceDelta.REMOVED ||
@@ -465,6 +474,7 @@ public class BooleanExpressionsEditor
if (!visitor.getRemovedResources().isEmpty()) {
getSite().getShell().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
removedResources.addAll(visitor.getRemovedResources());
if (!isDirty()) {
@@ -477,6 +487,7 @@ public class BooleanExpressionsEditor
if (!visitor.getChangedResources().isEmpty()) {
getSite().getShell().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
changedResources.addAll(visitor.getChangedResources());
if (getSite().getPage().getActiveEditor() == BooleanExpressionsEditor.this) {
@@ -535,8 +546,9 @@ public class BooleanExpressionsEditor
*/
protected void handleChangedResources() {
if (!changedResources.isEmpty() && (!isDirty() || handleDirtyConflict())) {
+ ResourceSet resourceSet = editingDomain.getResourceSet();
if (isDirty()) {
- changedResources.addAll(editingDomain.getResourceSet().getResources());
+ changedResources.addAll(resourceSet.getResources());
}
editingDomain.getCommandStack().flush();
@@ -545,7 +557,7 @@ public class BooleanExpressionsEditor
if (resource.isLoaded()) {
resource.unload();
try {
- resource.load(Collections.EMPTY_MAP);
+ resource.load(resourceSet.getLoadOptions());
}
catch (IOException exception) {
if (!resourceToDiagnosticMap.containsKey(resource)) {
@@ -668,9 +680,11 @@ public class BooleanExpressionsEditor
//
commandStack.addCommandStackListener
(new CommandStackListener() {
+ @Override
public void commandStackChanged(final EventObject event) {
getContainer().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
firePropertyChange(IEditorPart.PROP_DIRTY);
@@ -682,7 +696,7 @@ public class BooleanExpressionsEditor
}
for (Iterator<PropertySheetPage> i = propertySheetPages.iterator(); i.hasNext(); ) {
PropertySheetPage propertySheetPage = i.next();
- if (propertySheetPage.getControl().isDisposed()) {
+ if (propertySheetPage.getControl() == null || propertySheetPage.getControl().isDisposed()) {
i.remove();
}
else {
@@ -723,6 +737,7 @@ public class BooleanExpressionsEditor
if (theSelection != null && !theSelection.isEmpty()) {
Runnable runnable =
new Runnable() {
+ @Override
public void run() {
// Try to select the items in the current content viewer of the editor.
//
@@ -743,6 +758,7 @@ public class BooleanExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EditingDomain getEditingDomain() {
return editingDomain;
}
@@ -824,6 +840,7 @@ public class BooleanExpressionsEditor
new ISelectionChangedListener() {
// This just notifies those things that are affected by the section.
//
+ @Override
public void selectionChanged(SelectionChangedEvent selectionChangedEvent) {
setSelection(selectionChangedEvent.getSelection());
}
@@ -858,6 +875,7 @@ public class BooleanExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public Viewer getViewer() {
return currentViewer;
}
@@ -979,8 +997,11 @@ public class BooleanExpressionsEditor
getSite().getShell().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
- setActivePage(0);
+ if (!getContainer().isDisposed()) {
+ setActivePage(0);
+ }
}
});
}
@@ -1003,6 +1024,7 @@ public class BooleanExpressionsEditor
getSite().getShell().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
updateProblemIndication();
}
@@ -1020,9 +1042,9 @@ public class BooleanExpressionsEditor
if (getPageCount() <= 1) {
setPageText(0, ""); //$NON-NLS-1$
if (getContainer() instanceof CTabFolder) {
- ((CTabFolder)getContainer()).setTabHeight(1);
Point point = getContainer().getSize();
- getContainer().setSize(point.x, point.y + 6);
+ Rectangle clientArea = getContainer().getClientArea();
+ getContainer().setSize(point.x, 2 * point.y - clientArea.height - clientArea.y);
}
}
}
@@ -1038,9 +1060,9 @@ public class BooleanExpressionsEditor
if (getPageCount() > 1) {
setPageText(0, getString("_UI_SelectionPage_label")); //$NON-NLS-1$
if (getContainer() instanceof CTabFolder) {
- ((CTabFolder)getContainer()).setTabHeight(SWT.DEFAULT);
Point point = getContainer().getSize();
- getContainer().setSize(point.x, point.y - 6);
+ Rectangle clientArea = getContainer().getClientArea();
+ getContainer().setSize(point.x, clientArea.height + clientArea.y);
}
}
}
@@ -1068,15 +1090,15 @@ public class BooleanExpressionsEditor
*/
@SuppressWarnings("rawtypes")
@Override
- public Object getAdapter(Class key) {
+ public <T> T getAdapter(Class<T> key) {
if (key.equals(IContentOutlinePage.class)) {
- return showOutlineView() ? getContentOutlinePage() : null;
+ return showOutlineView() ? key.cast(getContentOutlinePage()) : null;
}
else if (key.equals(IPropertySheetPage.class)) {
- return getPropertySheetPage();
+ return key.cast(getPropertySheetPage());
}
else if (key.equals(IGotoMarker.class)) {
- return this;
+ return key.cast(this);
}
else {
return super.getAdapter(key);
@@ -1139,6 +1161,7 @@ public class BooleanExpressionsEditor
(new ISelectionChangedListener() {
// This ensures that we handle selections correctly.
//
+ @Override
public void selectionChanged(SelectionChangedEvent event) {
handleContentOutlineSelection(event.getSelection());
}
@@ -1156,7 +1179,7 @@ public class BooleanExpressionsEditor
*/
public IPropertySheetPage getPropertySheetPage() {
PropertySheetPage propertySheetPage =
- new ExtendedPropertySheetPage(editingDomain) {
+ new ExtendedPropertySheetPage(editingDomain, ExtendedPropertySheetPage.Decoration.NONE, null, 0, false) {
@Override
public void setSelectionToViewer(List<?> selection) {
BooleanExpressionsEditor.this.setSelectionToViewer(selection);
@@ -1351,6 +1374,7 @@ public class BooleanExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void gotoMarker(IMarker marker) {
List<?> targetObjects = markerHelper.getTargetObjects(editingDomain, marker);
if (!targetObjects.isEmpty()) {
@@ -1390,6 +1414,7 @@ public class BooleanExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void addSelectionChangedListener(ISelectionChangedListener listener) {
selectionChangedListeners.add(listener);
}
@@ -1400,6 +1425,7 @@ public class BooleanExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void removeSelectionChangedListener(ISelectionChangedListener listener) {
selectionChangedListeners.remove(listener);
}
@@ -1410,6 +1436,7 @@ public class BooleanExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public ISelection getSelection() {
return editorSelection;
}
@@ -1421,6 +1448,7 @@ public class BooleanExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setSelection(ISelection selection) {
editorSelection = selection;
@@ -1490,6 +1518,7 @@ public class BooleanExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void menuAboutToShow(IMenuManager menuManager) {
((IMenuListener)getEditorSite().getActionBarContributor()).menuAboutToShow(menuManager);
}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsActionBarContributor.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsActionBarContributor.java
index 3cf77bc0c8d..a01eaa2c463 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsActionBarContributor.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsActionBarContributor.java
@@ -197,6 +197,7 @@ public class ExpressionsActionBarContributor
*/
@Override
public void contributeToToolBar(IToolBarManager toolBarManager) {
+ super.contributeToToolBar(toolBarManager);
toolBarManager.add(new Separator("expressions-settings")); //$NON-NLS-1$
toolBarManager.add(new Separator("expressions-additions")); //$NON-NLS-1$
}
@@ -233,6 +234,7 @@ public class ExpressionsActionBarContributor
//
submenuManager.addMenuListener
(new IMenuListener() {
+ @Override
public void menuAboutToShow(IMenuManager menuManager) {
menuManager.updateAll(true);
}
@@ -280,6 +282,7 @@ public class ExpressionsActionBarContributor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void selectionChanged(SelectionChangedEvent event) {
// Remove any menu items for old selection.
//
@@ -481,7 +484,7 @@ public class ExpressionsActionBarContributor
if (contributionItem instanceof MenuManager) {
MenuManager submenuManager = (MenuManager)contributionItem;
if (submenuActions.containsKey(submenuManager.getMenuText())) {
- depopulateManager(submenuManager, submenuActions.get(contributionItem));
+ depopulateManager(submenuManager, submenuActions.get(submenuManager.getMenuText()));
manager.remove(contributionItem);
}
}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsEditor.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsEditor.java
index 44f9cdadb11..ed21fe4476e 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsEditor.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsEditor.java
@@ -81,6 +81,7 @@ import org.eclipse.swt.events.ControlEvent;
import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.graphics.Rectangle;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Composite;
@@ -338,6 +339,7 @@ public class ExpressionsEditor
*/
protected IPartListener partListener =
new IPartListener() {
+ @Override
public void partActivated(IWorkbenchPart p) {
if (p instanceof ContentOutline) {
if (((ContentOutline)p).getCurrentPage() == contentOutlinePage) {
@@ -356,15 +358,19 @@ public class ExpressionsEditor
handleActivate();
}
}
+ @Override
public void partBroughtToTop(IWorkbenchPart p) {
// Ignore.
}
+ @Override
public void partClosed(IWorkbenchPart p) {
// Ignore.
}
+ @Override
public void partDeactivated(IWorkbenchPart p) {
// Ignore.
}
+ @Override
public void partOpened(IWorkbenchPart p) {
// Ignore.
}
@@ -450,6 +456,7 @@ public class ExpressionsEditor
dispatching = true;
getSite().getShell().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
dispatching = false;
updateProblemIndication();
@@ -479,6 +486,7 @@ public class ExpressionsEditor
*/
protected IResourceChangeListener resourceChangeListener =
new IResourceChangeListener() {
+ @Override
public void resourceChanged(IResourceChangeEvent event) {
IResourceDelta delta = event.getDelta();
try {
@@ -487,6 +495,7 @@ public class ExpressionsEditor
protected Collection<Resource> changedResources = new ArrayList<Resource>();
protected Collection<Resource> removedResources = new ArrayList<Resource>();
+ @Override
public boolean visit(IResourceDelta delta) {
if (delta.getResource().getType() == IResource.FILE) {
if (delta.getKind() == IResourceDelta.REMOVED ||
@@ -522,6 +531,7 @@ public class ExpressionsEditor
if (!visitor.getRemovedResources().isEmpty()) {
getSite().getShell().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
removedResources.addAll(visitor.getRemovedResources());
if (!isDirty()) {
@@ -534,6 +544,7 @@ public class ExpressionsEditor
if (!visitor.getChangedResources().isEmpty()) {
getSite().getShell().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
changedResources.addAll(visitor.getChangedResources());
if (getSite().getPage().getActiveEditor() == ExpressionsEditor.this) {
@@ -592,8 +603,9 @@ public class ExpressionsEditor
*/
protected void handleChangedResources() {
if (!changedResources.isEmpty() && (!isDirty() || handleDirtyConflict())) {
+ ResourceSet resourceSet = editingDomain.getResourceSet();
if (isDirty()) {
- changedResources.addAll(editingDomain.getResourceSet().getResources());
+ changedResources.addAll(resourceSet.getResources());
}
editingDomain.getCommandStack().flush();
@@ -602,7 +614,7 @@ public class ExpressionsEditor
if (resource.isLoaded()) {
resource.unload();
try {
- resource.load(Collections.EMPTY_MAP);
+ resource.load(resourceSet.getLoadOptions());
}
catch (IOException exception) {
if (!resourceToDiagnosticMap.containsKey(resource)) {
@@ -725,9 +737,11 @@ public class ExpressionsEditor
//
commandStack.addCommandStackListener
(new CommandStackListener() {
+ @Override
public void commandStackChanged(final EventObject event) {
getContainer().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
firePropertyChange(IEditorPart.PROP_DIRTY);
@@ -739,7 +753,7 @@ public class ExpressionsEditor
}
for (Iterator<PropertySheetPage> i = propertySheetPages.iterator(); i.hasNext(); ) {
PropertySheetPage propertySheetPage = i.next();
- if (propertySheetPage.getControl().isDisposed()) {
+ if (propertySheetPage.getControl() == null || propertySheetPage.getControl().isDisposed()) {
i.remove();
}
else {
@@ -780,6 +794,7 @@ public class ExpressionsEditor
if (theSelection != null && !theSelection.isEmpty()) {
Runnable runnable =
new Runnable() {
+ @Override
public void run() {
// Try to select the items in the current content viewer of the editor.
//
@@ -800,6 +815,7 @@ public class ExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EditingDomain getEditingDomain() {
return editingDomain;
}
@@ -896,6 +912,7 @@ public class ExpressionsEditor
new ISelectionChangedListener() {
// This just notifies those things that are affected by the section.
//
+ @Override
public void selectionChanged(SelectionChangedEvent selectionChangedEvent) {
setSelection(selectionChangedEvent.getSelection());
}
@@ -930,6 +947,7 @@ public class ExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public Viewer getViewer() {
return currentViewer;
}
@@ -1235,8 +1253,11 @@ public class ExpressionsEditor
getSite().getShell().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
- setActivePage(0);
+ if (!getContainer().isDisposed()) {
+ setActivePage(0);
+ }
}
});
}
@@ -1259,6 +1280,7 @@ public class ExpressionsEditor
getSite().getShell().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
updateProblemIndication();
}
@@ -1276,9 +1298,9 @@ public class ExpressionsEditor
if (getPageCount() <= 1) {
setPageText(0, ""); //$NON-NLS-1$
if (getContainer() instanceof CTabFolder) {
- ((CTabFolder)getContainer()).setTabHeight(1);
Point point = getContainer().getSize();
- getContainer().setSize(point.x, point.y + 6);
+ Rectangle clientArea = getContainer().getClientArea();
+ getContainer().setSize(point.x, 2 * point.y - clientArea.height - clientArea.y);
}
}
}
@@ -1294,9 +1316,9 @@ public class ExpressionsEditor
if (getPageCount() > 1) {
setPageText(0, getString("_UI_SelectionPage_label")); //$NON-NLS-1$
if (getContainer() instanceof CTabFolder) {
- ((CTabFolder)getContainer()).setTabHeight(SWT.DEFAULT);
Point point = getContainer().getSize();
- getContainer().setSize(point.x, point.y - 6);
+ Rectangle clientArea = getContainer().getClientArea();
+ getContainer().setSize(point.x, clientArea.height + clientArea.y);
}
}
}
@@ -1324,15 +1346,15 @@ public class ExpressionsEditor
*/
@SuppressWarnings("rawtypes")
@Override
- public Object getAdapter(Class key) {
+ public <T> T getAdapter(Class<T> key) {
if (key.equals(IContentOutlinePage.class)) {
- return showOutlineView() ? getContentOutlinePage() : null;
+ return showOutlineView() ? key.cast(getContentOutlinePage()) : null;
}
else if (key.equals(IPropertySheetPage.class)) {
- return getPropertySheetPage();
+ return key.cast(getPropertySheetPage());
}
else if (key.equals(IGotoMarker.class)) {
- return this;
+ return key.cast(this);
}
else {
return super.getAdapter(key);
@@ -1395,6 +1417,7 @@ public class ExpressionsEditor
(new ISelectionChangedListener() {
// This ensures that we handle selections correctly.
//
+ @Override
public void selectionChanged(SelectionChangedEvent event) {
handleContentOutlineSelection(event.getSelection());
}
@@ -1412,7 +1435,7 @@ public class ExpressionsEditor
*/
public IPropertySheetPage getPropertySheetPage() {
PropertySheetPage propertySheetPage =
- new ExtendedPropertySheetPage(editingDomain) {
+ new ExtendedPropertySheetPage(editingDomain, ExtendedPropertySheetPage.Decoration.NONE, null, 0, false) {
@Override
public void setSelectionToViewer(List<?> selection) {
ExpressionsEditor.this.setSelectionToViewer(selection);
@@ -1619,6 +1642,7 @@ public class ExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void gotoMarker(IMarker marker) {
List<?> targetObjects = markerHelper.getTargetObjects(editingDomain, marker);
if (!targetObjects.isEmpty()) {
@@ -1663,6 +1687,7 @@ public class ExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void addSelectionChangedListener(ISelectionChangedListener listener) {
selectionChangedListeners.add(listener);
}
@@ -1673,6 +1698,7 @@ public class ExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void removeSelectionChangedListener(ISelectionChangedListener listener) {
selectionChangedListeners.remove(listener);
}
@@ -1683,6 +1709,7 @@ public class ExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public ISelection getSelection() {
return editorSelection;
}
@@ -1694,6 +1721,7 @@ public class ExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setSelection(ISelection selection) {
editorSelection = selection;
@@ -1763,6 +1791,7 @@ public class ExpressionsEditor
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void menuAboutToShow(IMenuManager menuManager) {
((IMenuListener)getEditorSite().getActionBarContributor()).menuAboutToShow(menuManager);
}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsModelWizard.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsModelWizard.java
index 0f69cd1d32b..8ffac2de37c 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsModelWizard.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.editor/src-gen/org/eclipse/papyrus/infra/emf/expressions/presentation/ExpressionsModelWizard.java
@@ -184,6 +184,7 @@ public class ExpressionsModelWizard extends Wizard implements INewWizard {
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void init(IWorkbench workbench, IStructuredSelection selection) {
this.workbench = workbench;
this.selection = selection;
@@ -290,6 +291,7 @@ public class ExpressionsModelWizard extends Wizard implements INewWizard {
final ISelection targetSelection = new StructuredSelection(modelFile);
getShell().getDisplay().asyncExec
(new Runnable() {
+ @Override
public void run() {
((ISetSelectionTarget)activePart).selectReveal(targetSelection);
}
@@ -406,6 +408,7 @@ public class ExpressionsModelWizard extends Wizard implements INewWizard {
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void createControl(Composite parent) {
Composite composite = new Composite(parent, SWT.NONE); {
GridLayout layout = new GridLayout();
@@ -480,6 +483,7 @@ public class ExpressionsModelWizard extends Wizard implements INewWizard {
*/
protected ModifyListener validator =
new ModifyListener() {
+ @Override
public void modifyText(ModifyEvent e) {
setPageComplete(validatePage());
}
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 7e3cf5c2876..2c9bc4ca2d9 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,10 +1,11 @@
Manifest-Version: 1.0
Require-Bundle: org.eclipse.papyrus.infra.properties.ui;bundle-version="[3.0.0,4.0.0)",
org.eclipse.papyrus.infra.constraints;bundle-version="[2.0.0,3.0.0)",
- org.eclipse.papyrus.infra.emf.expressions;bundle-version="[1.0.0,2.0.0)"
+ org.eclipse.papyrus.infra.emf.expressions;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.papyrus.emf.ui;bundle-version="[1.0.0,2.0.0)"
Bundle-Vendor: %Bundle-Vendor
Bundle-ActivationPolicy: lazy
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.0.100.qualifier
Bundle-Name: %Bundle-Name
Bundle-Activator: org.eclipse.papyrus.infra.emf.expressions.properties.Activator
Bundle-ManifestVersion: 2
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 ca3646bd01a..6f0cda0a66f 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
@@ -8,7 +8,7 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.emf.expressions.properties</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.0.100-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 bbe443dad9b..964918b97ff 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
@@ -1,288 +1,280 @@
<?xml version="1.0" encoding="ASCII"?>
-<contexts:Context xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:constraints="http://www.eclipse.org/papyrus/constraints/0.9" xmlns:contexts="http://www.eclipse.org/papyrus/properties/contexts/0.9" xmi:id="_TD6UMCq7EeeggtQf9kdCWQ" name="expressions" label="Expressions Metamodel">
- <tabs xmi:id="_UckJMCq7EeeggtQf9kdCWQ" label="expressions" id="expressions" priority="100">
- <sections xmi:id="_UckwQCq7EeeggtQf9kdCWQ" name="Single IBasicExpressionElement" sectionFile="ui/SingleIBasicExpressionElement.xwt">
+<contexts:Context xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:constraints="http://www.eclipse.org/papyrus/constraints/0.9" xmlns:contexts="http://www.eclipse.org/papyrus/properties/contexts/0.9" xmi:id="_P83s4I3oEemjwpaBkaWY0Q" name="expressions">
+ <tabs xmi:id="_QwT8AI3oEemjwpaBkaWY0Q" label="expressions" id="expressions" priority="100">
+ <sections xmi:id="_QwUjEI3oEemjwpaBkaWY0Q" name="Single IBasicExpressionElement" sectionFile="ui/SingleIBasicExpressionElement.xwt">
<widget href="ui/SingleIBasicExpressionElement.xwt#/"/>
</sections>
- <sections xmi:id="_UckwQSq7EeeggtQf9kdCWQ" name="Single IExpression" sectionFile="ui/SingleIExpression.xwt">
+ <sections xmi:id="_QwUjEY3oEemjwpaBkaWY0Q" name="Single IExpression" sectionFile="ui/SingleIExpression.xwt">
<widget href="ui/SingleIExpression.xwt#/"/>
</sections>
- <sections xmi:id="_UckwQiq7EeeggtQf9kdCWQ" name="Single ExpressionCatalog" sectionFile="ui/SingleExpressionCatalog.xwt">
+ <sections xmi:id="_QwVKII3oEemjwpaBkaWY0Q" name="Single ExpressionCatalog" sectionFile="ui/SingleExpressionCatalog.xwt">
<widget href="ui/SingleExpressionCatalog.xwt#/"/>
</sections>
- <sections xmi:id="_UclXUCq7EeeggtQf9kdCWQ" name="Single EClass" sectionFile="ui/SingleEClass.xwt">
- <widget href="ui/SingleEClass.xwt#/"/>
- </sections>
- <sections xmi:id="_UclXUSq7EeeggtQf9kdCWQ" name="Single EObject" sectionFile="ui/SingleEObject.xwt">
- <widget href="ui/SingleEObject.xwt#/"/>
- </sections>
- <sections xmi:id="_UclXUiq7EeeggtQf9kdCWQ" name="Multiple IBasicExpressionElement" sectionFile="ui/MultipleIBasicExpressionElement.xwt">
+ <sections xmi:id="_QwVKIY3oEemjwpaBkaWY0Q" name="Multiple IBasicExpressionElement" sectionFile="ui/MultipleIBasicExpressionElement.xwt">
<widget href="ui/MultipleIBasicExpressionElement.xwt#/"/>
</sections>
- <sections xmi:id="_Ucl-YCq7EeeggtQf9kdCWQ" name="Multiple IExpression" sectionFile="ui/MultipleIExpression.xwt">
+ <sections xmi:id="_QwVKIo3oEemjwpaBkaWY0Q" name="Multiple IExpression" sectionFile="ui/MultipleIExpression.xwt">
<widget href="ui/MultipleIExpression.xwt#/"/>
</sections>
- <sections xmi:id="_Ucl-YSq7EeeggtQf9kdCWQ" name="Multiple ExpressionCatalog" sectionFile="ui/MultipleExpressionCatalog.xwt">
+ <sections xmi:id="_QwVxMI3oEemjwpaBkaWY0Q" name="Multiple ExpressionCatalog" sectionFile="ui/MultipleExpressionCatalog.xwt">
<widget href="ui/MultipleExpressionCatalog.xwt#/"/>
</sections>
- <sections xmi:id="_Ucl-Yiq7EeeggtQf9kdCWQ" name="Multiple EClass" sectionFile="ui/MultipleEClass.xwt">
- <widget href="ui/MultipleEClass.xwt#/"/>
- </sections>
- <sections xmi:id="_Ucl-Yyq7EeeggtQf9kdCWQ" name="Multiple EObject" sectionFile="ui/MultipleEObject.xwt">
- <widget href="ui/MultipleEObject.xwt#/"/>
- </sections>
- <sections xmi:id="_UcmlcCq7EeeggtQf9kdCWQ" name="Single IBooleanExpression" sectionFile="ui/SingleIBooleanExpression.xwt">
+ <sections xmi:id="_QwVxMY3oEemjwpaBkaWY0Q" name="Single IBooleanExpression" sectionFile="ui/SingleIBooleanExpression.xwt">
<widget href="ui/SingleIBooleanExpression.xwt#/"/>
</sections>
- <sections xmi:id="_UcmlcSq7EeeggtQf9kdCWQ" name="Multiple IBooleanExpression" sectionFile="ui/MultipleIBooleanExpression.xwt">
+ <sections xmi:id="_QwVxMo3oEemjwpaBkaWY0Q" name="Multiple IBooleanExpression" sectionFile="ui/MultipleIBooleanExpression.xwt">
<widget href="ui/MultipleIBooleanExpression.xwt#/"/>
</sections>
- <sections xmi:id="_Ucmlciq7EeeggtQf9kdCWQ" name="Single IBooleanEObjectExpression" sectionFile="ui/SingleIBooleanEObjectExpression.xwt">
+ <sections xmi:id="_QwWYQI3oEemjwpaBkaWY0Q" name="Single IBooleanEObjectExpression" sectionFile="ui/SingleIBooleanEObjectExpression.xwt">
<widget href="ui/SingleIBooleanEObjectExpression.xwt#/"/>
</sections>
- <sections xmi:id="_Ucmlcyq7EeeggtQf9kdCWQ" name="Multiple IBooleanEObjectExpression" sectionFile="ui/MultipleIBooleanEObjectExpression.xwt">
+ <sections xmi:id="_QwWYQY3oEemjwpaBkaWY0Q" name="Multiple IBooleanEObjectExpression" sectionFile="ui/MultipleIBooleanEObjectExpression.xwt">
<widget href="ui/MultipleIBooleanEObjectExpression.xwt#/"/>
</sections>
- <sections xmi:id="_UcnMgCq7EeeggtQf9kdCWQ" name="Single OrExpression" sectionFile="ui/SingleOrExpression.xwt">
+ <sections xmi:id="_QwW_UI3oEemjwpaBkaWY0Q" name="Single OrExpression" sectionFile="ui/SingleOrExpression.xwt">
<widget href="ui/SingleOrExpression.xwt#/"/>
</sections>
- <sections xmi:id="_UcnMgSq7EeeggtQf9kdCWQ" name="Multiple OrExpression" sectionFile="ui/MultipleOrExpression.xwt">
+ <sections xmi:id="_QwW_UY3oEemjwpaBkaWY0Q" name="Multiple OrExpression" sectionFile="ui/MultipleOrExpression.xwt">
<widget href="ui/MultipleOrExpression.xwt#/"/>
</sections>
- <sections xmi:id="_UcnMgiq7EeeggtQf9kdCWQ" name="Single AndExpression" sectionFile="ui/SingleAndExpression.xwt">
+ <sections xmi:id="_QwW_Uo3oEemjwpaBkaWY0Q" name="Single AndExpression" sectionFile="ui/SingleAndExpression.xwt">
<widget href="ui/SingleAndExpression.xwt#/"/>
</sections>
- <sections xmi:id="_UcnzkCq7EeeggtQf9kdCWQ" name="Multiple AndExpression" sectionFile="ui/MultipleAndExpression.xwt">
+ <sections xmi:id="_QwXmYI3oEemjwpaBkaWY0Q" name="Multiple AndExpression" sectionFile="ui/MultipleAndExpression.xwt">
<widget href="ui/MultipleAndExpression.xwt#/"/>
</sections>
- <sections xmi:id="_UcnzkSq7EeeggtQf9kdCWQ" name="Single NotExpression" sectionFile="ui/SingleNotExpression.xwt">
+ <sections xmi:id="_QwXmYY3oEemjwpaBkaWY0Q" name="Single NotExpression" sectionFile="ui/SingleNotExpression.xwt">
<widget href="ui/SingleNotExpression.xwt#/"/>
</sections>
- <sections xmi:id="_UcoaoCq7EeeggtQf9kdCWQ" name="Multiple NotExpression" sectionFile="ui/MultipleNotExpression.xwt">
+ <sections xmi:id="_QwYNcI3oEemjwpaBkaWY0Q" name="Multiple NotExpression" sectionFile="ui/MultipleNotExpression.xwt">
<widget href="ui/MultipleNotExpression.xwt#/"/>
</sections>
- <sections xmi:id="_UcoaoSq7EeeggtQf9kdCWQ" name="Single LiteralTrueExpression" sectionFile="ui/SingleLiteralTrueExpression.xwt">
+ <sections xmi:id="_QwYNcY3oEemjwpaBkaWY0Q" name="Single LiteralTrueExpression" sectionFile="ui/SingleLiteralTrueExpression.xwt">
<widget href="ui/SingleLiteralTrueExpression.xwt#/"/>
</sections>
- <sections xmi:id="_Ucoaoiq7EeeggtQf9kdCWQ" name="Multiple LiteralTrueExpression" sectionFile="ui/MultipleLiteralTrueExpression.xwt">
+ <sections xmi:id="_QwYNco3oEemjwpaBkaWY0Q" name="Multiple LiteralTrueExpression" sectionFile="ui/MultipleLiteralTrueExpression.xwt">
<widget href="ui/MultipleLiteralTrueExpression.xwt#/"/>
</sections>
- <sections xmi:id="_Ucoaoyq7EeeggtQf9kdCWQ" name="Single LiteralFalseExpression" sectionFile="ui/SingleLiteralFalseExpression.xwt">
+ <sections xmi:id="_QwY0gI3oEemjwpaBkaWY0Q" name="Single LiteralFalseExpression" sectionFile="ui/SingleLiteralFalseExpression.xwt">
<widget href="ui/SingleLiteralFalseExpression.xwt#/"/>
</sections>
- <sections xmi:id="_UcpBsCq7EeeggtQf9kdCWQ" name="Multiple LiteralFalseExpression" sectionFile="ui/MultipleLiteralFalseExpression.xwt">
+ <sections xmi:id="_QwY0gY3oEemjwpaBkaWY0Q" name="Multiple LiteralFalseExpression" sectionFile="ui/MultipleLiteralFalseExpression.xwt">
<widget href="ui/MultipleLiteralFalseExpression.xwt#/"/>
</sections>
- <sections xmi:id="_UcpBsSq7EeeggtQf9kdCWQ" name="Single ReferenceBooleanExpression" sectionFile="ui/SingleReferenceBooleanExpression.xwt">
+ <sections xmi:id="_QwZbkI3oEemjwpaBkaWY0Q" name="Single ReferenceBooleanExpression" sectionFile="ui/SingleReferenceBooleanExpression.xwt">
<widget href="ui/SingleReferenceBooleanExpression.xwt#/"/>
</sections>
- <sections xmi:id="_UcpBsiq7EeeggtQf9kdCWQ" name="Multiple ReferenceBooleanExpression" sectionFile="ui/MultipleReferenceBooleanExpression.xwt">
+ <sections xmi:id="_QwZbkY3oEemjwpaBkaWY0Q" name="Multiple ReferenceBooleanExpression" sectionFile="ui/MultipleReferenceBooleanExpression.xwt">
<widget href="ui/MultipleReferenceBooleanExpression.xwt#/"/>
</sections>
+ <sections xmi:id="_QwZbko3oEemjwpaBkaWY0Q" name="Single SingleEAttributeValueEqualityExpression" sectionFile="ui/SingleSingleEAttributeValueEqualityExpression.xwt">
+ <widget href="ui/SingleSingleEAttributeValueEqualityExpression.xwt#/"/>
+ </sections>
+ <sections xmi:id="_QwaCoI3oEemjwpaBkaWY0Q" name="Multiple SingleEAttributeValueEqualityExpression" sectionFile="ui/MultipleSingleEAttributeValueEqualityExpression.xwt">
+ <widget href="ui/MultipleSingleEAttributeValueEqualityExpression.xwt#/"/>
+ </sections>
</tabs>
- <views xmi:id="_TD6UMSq7EeeggtQf9kdCWQ" name="Single IBasicExpressionElement" sections="_UckwQCq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Umiq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6UMiq7EeeggtQf9kdCWQ" name="isSingleIBasicExpressionElement">
+ <views xmi:id="_P83s4Y3oEemjwpaBkaWY0Q" name="Single IBasicExpressionElement" sections="_QwUjEI3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tQo3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83s4o3oEemjwpaBkaWY0Q" name="isSingleIBasicExpressionElement">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s443oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s5I3oEemjwpaBkaWY0Q" name="className" value="IBasicExpressionElement"/>
+ </constraints>
+ </views>
+ <views xmi:id="_P83s5Y3oEemjwpaBkaWY0Q" name="Single IExpression" sections="_QwUjEY3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tRY3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83s5o3oEemjwpaBkaWY0Q" name="isSingleIExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UMyq7EeeggtQf9kdCWQ" name="className" value="IBasicExpressionElement"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UNCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s543oEemjwpaBkaWY0Q" name="className" value="IExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s6I3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions"/>
</constraints>
</views>
- <views xmi:id="_TD6UNSq7EeeggtQf9kdCWQ" name="Single IExpression" sections="_UckwQSq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6UnSq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6UNiq7EeeggtQf9kdCWQ" name="isSingleIExpression">
+ <views xmi:id="_P83s6Y3oEemjwpaBkaWY0Q" name="Single ExpressionCatalog" sections="_QwVKII3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tRo3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83s6o3oEemjwpaBkaWY0Q" name="isSingleExpressionCatalog">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UNyq7EeeggtQf9kdCWQ" name="className" value="IExpression"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UOCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s643oEemjwpaBkaWY0Q" name="className" value="ExpressionCatalog"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s7I3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions"/>
</constraints>
</views>
- <views xmi:id="_TD6UOSq7EeeggtQf9kdCWQ" name="Single ExpressionCatalog" sections="_UckwQiq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Uniq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6UOiq7EeeggtQf9kdCWQ" name="isSingleExpressionCatalog">
+ <views xmi:id="_P83s7Y3oEemjwpaBkaWY0Q" elementMultiplicity="-1" name="Multiple IBasicExpressionElement" sections="_QwVKIY3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tQo3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83s7o3oEemjwpaBkaWY0Q" name="isMultipleIBasicExpressionElement">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UOyq7EeeggtQf9kdCWQ" name="className" value="ExpressionCatalog"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UPCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s743oEemjwpaBkaWY0Q" name="className" value="IBasicExpressionElement"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s8I3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions"/>
</constraints>
</views>
- <views xmi:id="_TD6URSq7EeeggtQf9kdCWQ" elementMultiplicity="-1" name="Multiple IBasicExpressionElement" sections="_UclXUiq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Umiq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6URiq7EeeggtQf9kdCWQ" name="isMultipleIBasicExpressionElement">
+ <views xmi:id="_P83s8Y3oEemjwpaBkaWY0Q" elementMultiplicity="-1" name="Multiple IExpression" sections="_QwVKIo3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tRY3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83s8o3oEemjwpaBkaWY0Q" name="isMultipleIExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6URyq7EeeggtQf9kdCWQ" name="className" value="IBasicExpressionElement"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6USCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s843oEemjwpaBkaWY0Q" name="className" value="IExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s9I3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions"/>
</constraints>
</views>
- <views xmi:id="_TD6USSq7EeeggtQf9kdCWQ" elementMultiplicity="-1" name="Multiple IExpression" sections="_Ucl-YCq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6UnSq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6USiq7EeeggtQf9kdCWQ" name="isMultipleIExpression">
+ <views xmi:id="_P83s9Y3oEemjwpaBkaWY0Q" elementMultiplicity="-1" name="Multiple ExpressionCatalog" sections="_QwVxMI3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tRo3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83s9o3oEemjwpaBkaWY0Q" name="isMultipleExpressionCatalog">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6USyq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UTCq7EeeggtQf9kdCWQ" name="className" value="IExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s943oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s-I3oEemjwpaBkaWY0Q" name="className" value="ExpressionCatalog"/>
</constraints>
</views>
- <views xmi:id="_TD6UTSq7EeeggtQf9kdCWQ" elementMultiplicity="-1" name="Multiple ExpressionCatalog" sections="_Ucl-YSq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Uniq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6UTiq7EeeggtQf9kdCWQ" name="isMultipleExpressionCatalog">
+ <views xmi:id="_P83s-Y3oEemjwpaBkaWY0Q" name="Single IBooleanExpression" sections="_QwVxMY3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tTY3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83s-o3oEemjwpaBkaWY0Q" name="isSingleIBooleanExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UTyq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UUCq7EeeggtQf9kdCWQ" name="className" value="ExpressionCatalog"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s-43oEemjwpaBkaWY0Q" name="className" value="IBooleanExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s_I3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
</constraints>
</views>
- <views xmi:id="_TD6UWSq7EeeggtQf9kdCWQ" name="Single IBooleanExpression" sections="_UcmlcCq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Upyq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6UWiq7EeeggtQf9kdCWQ" name="isSingleIBooleanExpression">
+ <views xmi:id="_P83s_Y3oEemjwpaBkaWY0Q" elementMultiplicity="-1" name="Multiple IBooleanExpression" sections="_QwVxMo3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tTY3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83s_o3oEemjwpaBkaWY0Q" name="isMultipleIBooleanExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UWyq7EeeggtQf9kdCWQ" name="className" value="IBooleanExpression"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UXCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83s_43oEemjwpaBkaWY0Q" name="className" value="IBooleanExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tAI3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
</constraints>
</views>
- <views xmi:id="_TD6UXSq7EeeggtQf9kdCWQ" elementMultiplicity="-1" name="Multiple IBooleanExpression" sections="_UcmlcSq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Upyq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6UXiq7EeeggtQf9kdCWQ" name="isMultipleIBooleanExpression">
+ <views xmi:id="_P83tAY3oEemjwpaBkaWY0Q" name="Single IBooleanEObjectExpression" sections="_QwWYQI3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tTI3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tAo3oEemjwpaBkaWY0Q" name="isSingleIBooleanEObjectExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UXyq7EeeggtQf9kdCWQ" name="className" value="IBooleanExpression"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UYCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tA43oEemjwpaBkaWY0Q" name="className" value="IBooleanEObjectExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tBI3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
</constraints>
</views>
- <views xmi:id="_TD6UYSq7EeeggtQf9kdCWQ" name="Single IBooleanEObjectExpression" sections="_Ucmlciq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Upiq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6UYiq7EeeggtQf9kdCWQ" name="isSingleIBooleanEObjectExpression">
+ <views xmi:id="_P83tBY3oEemjwpaBkaWY0Q" elementMultiplicity="-1" name="Multiple IBooleanEObjectExpression" sections="_QwWYQY3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tTI3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tBo3oEemjwpaBkaWY0Q" name="isMultipleIBooleanEObjectExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UYyq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UZCq7EeeggtQf9kdCWQ" name="className" value="IBooleanEObjectExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tB43oEemjwpaBkaWY0Q" name="className" value="IBooleanEObjectExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tCI3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
</constraints>
</views>
- <views xmi:id="_TD6UZSq7EeeggtQf9kdCWQ" elementMultiplicity="-1" name="Multiple IBooleanEObjectExpression" sections="_Ucmlcyq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Upiq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6UZiq7EeeggtQf9kdCWQ" name="isMultipleIBooleanEObjectExpression">
+ <views xmi:id="_P83tCY3oEemjwpaBkaWY0Q" name="Single OrExpression" sections="_QwW_UI3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tSY3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tCo3oEemjwpaBkaWY0Q" name="isSingleOrExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UZyq7EeeggtQf9kdCWQ" name="className" value="IBooleanEObjectExpression"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UaCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tC43oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tDI3oEemjwpaBkaWY0Q" name="className" value="OrExpression"/>
</constraints>
</views>
- <views xmi:id="_TD6UaSq7EeeggtQf9kdCWQ" name="Single OrExpression" sections="_UcnMgCq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Uoyq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6Uaiq7EeeggtQf9kdCWQ" name="isSingleOrExpression">
+ <views xmi:id="_P83tDY3oEemjwpaBkaWY0Q" elementMultiplicity="-1" name="Multiple OrExpression" sections="_QwW_UY3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tSY3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tDo3oEemjwpaBkaWY0Q" name="isMultipleOrExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6Uayq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UbCq7EeeggtQf9kdCWQ" name="className" value="OrExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tD43oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tEI3oEemjwpaBkaWY0Q" name="className" value="OrExpression"/>
</constraints>
</views>
- <views xmi:id="_TD6UbSq7EeeggtQf9kdCWQ" elementMultiplicity="-1" name="Multiple OrExpression" sections="_UcnMgSq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Uoyq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6Ubiq7EeeggtQf9kdCWQ" name="isMultipleOrExpression">
+ <views xmi:id="_P83tEY3oEemjwpaBkaWY0Q" name="Single AndExpression" sections="_QwW_Uo3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tTo3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tEo3oEemjwpaBkaWY0Q" name="isSingleAndExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6Ubyq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UcCq7EeeggtQf9kdCWQ" name="className" value="OrExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tE43oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tFI3oEemjwpaBkaWY0Q" name="className" value="AndExpression"/>
</constraints>
</views>
- <views xmi:id="_TD6UcSq7EeeggtQf9kdCWQ" name="Single AndExpression" sections="_UcnMgiq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6UqCq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6Uciq7EeeggtQf9kdCWQ" name="isSingleAndExpression">
+ <views xmi:id="_P83tFY3oEemjwpaBkaWY0Q" elementMultiplicity="-1" name="Multiple AndExpression" sections="_QwXmYI3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tTo3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tFo3oEemjwpaBkaWY0Q" name="isMultipleAndExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6Ucyq7EeeggtQf9kdCWQ" name="className" value="AndExpression"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UdCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tF43oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tGI3oEemjwpaBkaWY0Q" name="className" value="AndExpression"/>
</constraints>
</views>
- <views xmi:id="_TD6UdSq7EeeggtQf9kdCWQ" elementMultiplicity="-1" name="Multiple AndExpression" sections="_UcnzkCq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6UqCq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6Udiq7EeeggtQf9kdCWQ" name="isMultipleAndExpression">
+ <views xmi:id="_P83tGY3oEemjwpaBkaWY0Q" name="Single NotExpression" sections="_QwXmYY3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tUY3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tGo3oEemjwpaBkaWY0Q" name="isSingleNotExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6Udyq7EeeggtQf9kdCWQ" name="className" value="AndExpression"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UeCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tG43oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tHI3oEemjwpaBkaWY0Q" name="className" value="NotExpression"/>
</constraints>
</views>
- <views xmi:id="_TD6UeSq7EeeggtQf9kdCWQ" name="Single NotExpression" sections="_UcnzkSq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Uqyq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6Ueiq7EeeggtQf9kdCWQ" name="isSingleNotExpression">
+ <views xmi:id="_P83tHY3oEemjwpaBkaWY0Q" elementMultiplicity="-1" name="Multiple NotExpression" sections="_QwYNcI3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tUY3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tHo3oEemjwpaBkaWY0Q" name="isMultipleNotExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6Ueyq7EeeggtQf9kdCWQ" name="className" value="NotExpression"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UfCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tH43oEemjwpaBkaWY0Q" name="className" value="NotExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tII3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
</constraints>
</views>
- <views xmi:id="_TD6UfSq7EeeggtQf9kdCWQ" elementMultiplicity="-1" name="Multiple NotExpression" sections="_UcoaoCq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Uqyq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6Ufiq7EeeggtQf9kdCWQ" name="isMultipleNotExpression">
+ <views xmi:id="_P83tIY3oEemjwpaBkaWY0Q" name="Single LiteralTrueExpression" sections="_QwYNcY3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tVI3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tIo3oEemjwpaBkaWY0Q" name="isSingleLiteralTrueExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6Ufyq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UgCq7EeeggtQf9kdCWQ" name="className" value="NotExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tI43oEemjwpaBkaWY0Q" name="className" value="LiteralTrueExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tJI3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
</constraints>
</views>
- <views xmi:id="_TD6UgSq7EeeggtQf9kdCWQ" name="Single LiteralTrueExpression" sections="_UcoaoSq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Uriq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6Ugiq7EeeggtQf9kdCWQ" name="isSingleLiteralTrueExpression">
+ <views xmi:id="_P83tJY3oEemjwpaBkaWY0Q" elementMultiplicity="-1" name="Multiple LiteralTrueExpression" sections="_QwYNco3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tVI3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tJo3oEemjwpaBkaWY0Q" name="isMultipleLiteralTrueExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6Ugyq7EeeggtQf9kdCWQ" name="className" value="LiteralTrueExpression"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UhCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tJ43oEemjwpaBkaWY0Q" name="className" value="LiteralTrueExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tKI3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
</constraints>
</views>
- <views xmi:id="_TD6UhSq7EeeggtQf9kdCWQ" elementMultiplicity="-1" name="Multiple LiteralTrueExpression" sections="_Ucoaoiq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Uriq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6Uhiq7EeeggtQf9kdCWQ" name="isMultipleLiteralTrueExpression">
+ <views xmi:id="_P83tKY3oEemjwpaBkaWY0Q" name="Single LiteralFalseExpression" sections="_QwY0gI3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tVY3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tKo3oEemjwpaBkaWY0Q" name="isSingleLiteralFalseExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6Uhyq7EeeggtQf9kdCWQ" name="className" value="LiteralTrueExpression"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UiCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tK43oEemjwpaBkaWY0Q" name="className" value="LiteralFalseExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tLI3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
</constraints>
</views>
- <views xmi:id="_TD6UiSq7EeeggtQf9kdCWQ" name="Single LiteralFalseExpression" sections="_Ucoaoyq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Uryq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6Uiiq7EeeggtQf9kdCWQ" name="isSingleLiteralFalseExpression">
+ <views xmi:id="_P83tLY3oEemjwpaBkaWY0Q" elementMultiplicity="-1" name="Multiple LiteralFalseExpression" sections="_QwY0gY3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tVY3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tLo3oEemjwpaBkaWY0Q" name="isMultipleLiteralFalseExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6Uiyq7EeeggtQf9kdCWQ" name="className" value="LiteralFalseExpression"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UjCq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tL43oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tMI3oEemjwpaBkaWY0Q" name="className" value="LiteralFalseExpression"/>
</constraints>
</views>
- <views xmi:id="_TD6UjSq7EeeggtQf9kdCWQ" elementMultiplicity="-1" name="Multiple LiteralFalseExpression" sections="_UcpBsCq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6Uryq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6Ujiq7EeeggtQf9kdCWQ" name="isMultipleLiteralFalseExpression">
+ <views xmi:id="_P83tMY3oEemjwpaBkaWY0Q" name="Single ReferenceBooleanExpression" sections="_QwZbkI3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tVo3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tMo3oEemjwpaBkaWY0Q" name="isSingleReferenceBooleanExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6Ujyq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UkCq7EeeggtQf9kdCWQ" name="className" value="LiteralFalseExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tM43oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tNI3oEemjwpaBkaWY0Q" name="className" value="ReferenceBooleanExpression"/>
</constraints>
</views>
- <views xmi:id="_TD6UkSq7EeeggtQf9kdCWQ" name="Single ReferenceBooleanExpression" sections="_UcpBsSq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6UsCq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6Ukiq7EeeggtQf9kdCWQ" name="isSingleReferenceBooleanExpression">
+ <views xmi:id="_P83tNY3oEemjwpaBkaWY0Q" elementMultiplicity="-1" name="Multiple ReferenceBooleanExpression" sections="_QwZbkY3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tVo3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tNo3oEemjwpaBkaWY0Q" name="isMultipleReferenceBooleanExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6Ukyq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UlCq7EeeggtQf9kdCWQ" name="className" value="ReferenceBooleanExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tN43oEemjwpaBkaWY0Q" name="className" value="ReferenceBooleanExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tOI3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
</constraints>
</views>
- <views xmi:id="_TD6UlSq7EeeggtQf9kdCWQ" elementMultiplicity="-1" name="Multiple ReferenceBooleanExpression" sections="_UcpBsiq7EeeggtQf9kdCWQ" automaticContext="true" datacontexts="_TD6UsCq7EeeggtQf9kdCWQ">
- <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_TD6Uliq7EeeggtQf9kdCWQ" name="isMultipleReferenceBooleanExpression">
+ <views xmi:id="_P83tOY3oEemjwpaBkaWY0Q" name="Single SingleEAttributeValueEqualityExpression" sections="_QwZbko3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tWI3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tOo3oEemjwpaBkaWY0Q" name="isSingleSingleEAttributeValueEqualityExpression">
<constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6Ulyq7EeeggtQf9kdCWQ" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
- <properties xsi:type="constraints:ValueProperty" xmi:id="_TD6UmCq7EeeggtQf9kdCWQ" name="className" value="ReferenceBooleanExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tO43oEemjwpaBkaWY0Q" name="className" value="SingleEAttributeValueEqualityExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tPI3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
</constraints>
</views>
- <dataContexts xmi:id="_TD6UmSq7EeeggtQf9kdCWQ" name="expressions" label="expressions">
- <elements xmi:id="_TD6Umiq7EeeggtQf9kdCWQ" name="IBasicExpressionElement">
- <properties xmi:id="_TD6Umyq7EeeggtQf9kdCWQ" name="name"/>
- <properties xmi:id="_TD6UnCq7EeeggtQf9kdCWQ" name="description"/>
+ <views xmi:id="_P83tPY3oEemjwpaBkaWY0Q" elementMultiplicity="-1" name="Multiple SingleEAttributeValueEqualityExpression" sections="_QwaCoI3oEemjwpaBkaWY0Q" automaticContext="true" datacontexts="_P83tWI3oEemjwpaBkaWY0Q">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_P83tPo3oEemjwpaBkaWY0Q" name="isMultipleSingleEAttributeValueEqualityExpression">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tP43oEemjwpaBkaWY0Q" name="className" value="SingleEAttributeValueEqualityExpression"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_P83tQI3oEemjwpaBkaWY0Q" name="nsUri" value="http://www.eclipse.org/papyrus/expressions/booleanexpressions"/>
+ </constraints>
+ </views>
+ <dataContexts xmi:id="_P83tQY3oEemjwpaBkaWY0Q" name="expressions" label="expressions">
+ <elements xmi:id="_P83tQo3oEemjwpaBkaWY0Q" name="IBasicExpressionElement">
+ <properties xmi:id="_P83tQ43oEemjwpaBkaWY0Q" name="name"/>
+ <properties xmi:id="_P83tRI3oEemjwpaBkaWY0Q" name="description"/>
</elements>
- <elements xmi:id="_TD6UnSq7EeeggtQf9kdCWQ" name="IExpression" supertypes="_TD6Umiq7EeeggtQf9kdCWQ"/>
- <elements xmi:id="_TD6Uniq7EeeggtQf9kdCWQ" name="ExpressionCatalog" supertypes="_TD6Umiq7EeeggtQf9kdCWQ">
- <properties xmi:id="_TD6Unyq7EeeggtQf9kdCWQ" name="expressions" type="Reference" multiplicity="-1"/>
+ <elements xmi:id="_P83tRY3oEemjwpaBkaWY0Q" name="IExpression" supertypes="_P83tQo3oEemjwpaBkaWY0Q"/>
+ <elements xmi:id="_P83tRo3oEemjwpaBkaWY0Q" name="ExpressionCatalog" supertypes="_P83tQo3oEemjwpaBkaWY0Q">
+ <properties xmi:id="_P83tR43oEemjwpaBkaWY0Q" name="expressions" type="Reference" multiplicity="-1"/>
</elements>
- <elements xmi:id="_TD6UoCq7EeeggtQf9kdCWQ" name="EClass"/>
- <elements xmi:id="_TD6UoSq7EeeggtQf9kdCWQ" name="EObject"/>
- <elements xsi:type="contexts:DataContextPackage" xmi:id="_TD6Uoiq7EeeggtQf9kdCWQ" name="booleanexpressions">
- <elements xmi:id="_TD6Uoyq7EeeggtQf9kdCWQ" name="OrExpression" supertypes="_TD6Upiq7EeeggtQf9kdCWQ">
- <properties xmi:id="_TD6UpCq7EeeggtQf9kdCWQ" name="ownedExpressions" type="Reference" multiplicity="-1"/>
- <properties xmi:id="_TD6UpSq7EeeggtQf9kdCWQ" name="referencedExpressions" type="Reference" multiplicity="-1"/>
+ <elements xsi:type="contexts:DataContextPackage" xmi:id="_P83tSI3oEemjwpaBkaWY0Q" name="booleanexpressions">
+ <elements xmi:id="_P83tSY3oEemjwpaBkaWY0Q" name="OrExpression" supertypes="_P83tTI3oEemjwpaBkaWY0Q">
+ <properties xmi:id="_P83tSo3oEemjwpaBkaWY0Q" name="ownedExpressions" type="Reference" multiplicity="-1"/>
+ <properties xmi:id="_P83tS43oEemjwpaBkaWY0Q" name="referencedExpressions" type="Reference" multiplicity="-1"/>
</elements>
- <elements xmi:id="_TD6Upiq7EeeggtQf9kdCWQ" name="IBooleanEObjectExpression" supertypes="_TD6Upyq7EeeggtQf9kdCWQ"/>
- <elements xmi:id="_TD6Upyq7EeeggtQf9kdCWQ" name="IBooleanExpression" supertypes="_TD6UnSq7EeeggtQf9kdCWQ"/>
- <elements xmi:id="_TD6UqCq7EeeggtQf9kdCWQ" name="AndExpression" supertypes="_TD6Upiq7EeeggtQf9kdCWQ">
- <properties xmi:id="_TD6UqSq7EeeggtQf9kdCWQ" name="ownedExpressions" type="Reference" multiplicity="-1"/>
- <properties xmi:id="_TD6Uqiq7EeeggtQf9kdCWQ" name="referencedExpressions" type="Reference" multiplicity="-1"/>
+ <elements xmi:id="_P83tTI3oEemjwpaBkaWY0Q" name="IBooleanEObjectExpression" supertypes="_P83tTY3oEemjwpaBkaWY0Q"/>
+ <elements xmi:id="_P83tTY3oEemjwpaBkaWY0Q" name="IBooleanExpression" supertypes="_P83tRY3oEemjwpaBkaWY0Q"/>
+ <elements xmi:id="_P83tTo3oEemjwpaBkaWY0Q" name="AndExpression" supertypes="_P83tTI3oEemjwpaBkaWY0Q">
+ <properties xmi:id="_P83tT43oEemjwpaBkaWY0Q" name="ownedExpressions" type="Reference" multiplicity="-1"/>
+ <properties xmi:id="_P83tUI3oEemjwpaBkaWY0Q" name="referencedExpressions" type="Reference" multiplicity="-1"/>
</elements>
- <elements xmi:id="_TD6Uqyq7EeeggtQf9kdCWQ" name="NotExpression" supertypes="_TD6Upiq7EeeggtQf9kdCWQ">
- <properties xmi:id="_TD6UrCq7EeeggtQf9kdCWQ" name="ownedExpression" type="Reference"/>
- <properties xmi:id="_TD6UrSq7EeeggtQf9kdCWQ" name="referencedExpression" type="Reference"/>
+ <elements xmi:id="_P83tUY3oEemjwpaBkaWY0Q" name="NotExpression" supertypes="_P83tTI3oEemjwpaBkaWY0Q">
+ <properties xmi:id="_P83tUo3oEemjwpaBkaWY0Q" name="ownedExpression" type="Reference"/>
+ <properties xmi:id="_P83tU43oEemjwpaBkaWY0Q" name="referencedExpression" type="Reference"/>
</elements>
- <elements xmi:id="_TD6Uriq7EeeggtQf9kdCWQ" name="LiteralTrueExpression" supertypes="_TD6Upiq7EeeggtQf9kdCWQ"/>
- <elements xmi:id="_TD6Uryq7EeeggtQf9kdCWQ" name="LiteralFalseExpression" supertypes="_TD6Upiq7EeeggtQf9kdCWQ"/>
- <elements xmi:id="_TD6UsCq7EeeggtQf9kdCWQ" name="ReferenceBooleanExpression" supertypes="_TD6Upiq7EeeggtQf9kdCWQ">
- <properties xmi:id="_TD6UsSq7EeeggtQf9kdCWQ" name="referencedExpression" type="Reference"/>
+ <elements xmi:id="_P83tVI3oEemjwpaBkaWY0Q" name="LiteralTrueExpression" supertypes="_P83tTI3oEemjwpaBkaWY0Q"/>
+ <elements xmi:id="_P83tVY3oEemjwpaBkaWY0Q" name="LiteralFalseExpression" supertypes="_P83tTI3oEemjwpaBkaWY0Q"/>
+ <elements xmi:id="_P83tVo3oEemjwpaBkaWY0Q" name="ReferenceBooleanExpression" supertypes="_P83tTI3oEemjwpaBkaWY0Q">
+ <properties xmi:id="_P83tV43oEemjwpaBkaWY0Q" name="referencedExpression" type="Reference"/>
+ </elements>
+ <elements xmi:id="_P83tWI3oEemjwpaBkaWY0Q" name="SingleEAttributeValueEqualityExpression" supertypes="_P83tTI3oEemjwpaBkaWY0Q">
+ <properties xmi:id="_P83tWY3oEemjwpaBkaWY0Q" name="eAttribute" type="Reference" description="The eAttribute to check." multiplicity="1"/>
+ <properties xmi:id="_P83tWo3oEemjwpaBkaWY0Q" name="expectedValue" description="The expected value for the EAttribute."/>
</elements>
- </elements>
- <modelElementFactory href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@modelElementFactories.0"/>
- </dataContexts>
- <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" 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/MultipleSingleEAttributeValueEqualityExpression.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/MultipleSingleEAttributeValueEqualityExpression.xwt
new file mode 100755
index 00000000000..e29bdbb8542
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/MultipleSingleEAttributeValueEqualityExpression.xwt
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite xmlns="http://www.eclipse.org/xwt/presentation"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
+ xmlns:x="http://www.eclipse.org/xwt">
+ <Composite.layout>
+ <ppel:PropertiesLayout></ppel:PropertiesLayout>
+ </Composite.layout>
+</Composite> \ No newline at end of file
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 ac5c415f831..d912faa6885 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
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Composite xmlns="http://www.eclipse.org/xwt/presentation"
- xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
xmlns:x="http://www.eclipse.org/xwt">
<Composite.layout>
@@ -20,8 +21,8 @@
<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
</Composite.layout>
<ppe:MultiReference input="{Binding}"
- property="customexpressions:CustomAndExpression:ownedExpressions"></ppe:MultiReference>
+ property="expressions:booleanexpressions:AndExpression:ownedExpressions"></ppe:MultiReference>
<ppe:MultiReference input="{Binding}"
- property="customexpressions:CustomAndExpression:referencedExpressions"></ppe:MultiReference>
+ property="expressions:booleanexpressions:AndExpression: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/SingleExpressionCatalog.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleExpressionCatalog.xwt
index fe259e0b662..4e9a79151d8 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleExpressionCatalog.xwt
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleExpressionCatalog.xwt
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Composite xmlns="http://www.eclipse.org/xwt/presentation"
- xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
xmlns:x="http://www.eclipse.org/xwt">
<Composite.layout>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBasicExpressionElement.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBasicExpressionElement.xwt
index 9174f34e3f2..43ce2d1304f 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBasicExpressionElement.xwt
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBasicExpressionElement.xwt
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Composite xmlns="http://www.eclipse.org/xwt/presentation"
- xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
xmlns:x="http://www.eclipse.org/xwt">
<Composite.layout>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBooleanEObjectExpression.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBooleanEObjectExpression.xwt
index 9174f34e3f2..43ce2d1304f 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBooleanEObjectExpression.xwt
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBooleanEObjectExpression.xwt
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Composite xmlns="http://www.eclipse.org/xwt/presentation"
- xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
xmlns:x="http://www.eclipse.org/xwt">
<Composite.layout>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBooleanExpression.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBooleanExpression.xwt
index 9174f34e3f2..43ce2d1304f 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBooleanExpression.xwt
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIBooleanExpression.xwt
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Composite xmlns="http://www.eclipse.org/xwt/presentation"
- xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
xmlns:x="http://www.eclipse.org/xwt">
<Composite.layout>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIExpression.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIExpression.xwt
index 9174f34e3f2..43ce2d1304f 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIExpression.xwt
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleIExpression.xwt
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Composite xmlns="http://www.eclipse.org/xwt/presentation"
- xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
xmlns:x="http://www.eclipse.org/xwt">
<Composite.layout>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleLiteralFalseExpression.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleLiteralFalseExpression.xwt
index 9174f34e3f2..43ce2d1304f 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleLiteralFalseExpression.xwt
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleLiteralFalseExpression.xwt
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Composite xmlns="http://www.eclipse.org/xwt/presentation"
- xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
xmlns:x="http://www.eclipse.org/xwt">
<Composite.layout>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleLiteralTrueExpression.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleLiteralTrueExpression.xwt
index 9174f34e3f2..43ce2d1304f 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleLiteralTrueExpression.xwt
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleLiteralTrueExpression.xwt
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Composite xmlns="http://www.eclipse.org/xwt/presentation"
- xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
xmlns:x="http://www.eclipse.org/xwt">
<Composite.layout>
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 315c7562895..2ff0481e731 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
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Composite xmlns="http://www.eclipse.org/xwt/presentation"
- xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
xmlns:x="http://www.eclipse.org/xwt">
<Composite.layout>
@@ -20,8 +21,8 @@
<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
</Composite.layout>
<ppe:ReferenceDialog input="{Binding}"
- property="customexpressions:CustomNotExpression:ownedExpression"></ppe:ReferenceDialog>
+ property="expressions:booleanexpressions:NotExpression:ownedExpression"></ppe:ReferenceDialog>
<ppe:ReferenceDialog input="{Binding}"
- property="customexpressions:CustomNotExpression:referencedExpression"></ppe:ReferenceDialog>
+ property="expressions:booleanexpressions:NotExpression: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 258b5f29520..93eb1364f37 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
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Composite xmlns="http://www.eclipse.org/xwt/presentation"
- xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
xmlns:x="http://www.eclipse.org/xwt">
<Composite.layout>
@@ -20,8 +21,8 @@
<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
</Composite.layout>
<ppe:MultiReference input="{Binding}"
- property="customexpressions:CustomOrExpression:ownedExpressions"></ppe:MultiReference>
+ property="expressions:booleanexpressions:OrExpression:ownedExpressions"></ppe:MultiReference>
<ppe:MultiReference input="{Binding}"
- property="customexpressions:CustomOrExpression:referencedExpressions"></ppe:MultiReference>
+ property="expressions:booleanexpressions:OrExpression: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 9e8d707bd28..7335b0f960a 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
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<Composite xmlns="http://www.eclipse.org/xwt/presentation"
- xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
xmlns:x="http://www.eclipse.org/xwt">
<Composite.layout>
@@ -20,6 +21,6 @@
<ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
</Composite.layout>
<ppe:ReferenceDialog input="{Binding}"
- property="customexpressions:CustomReferenceBooleanExpression:referencedExpression"></ppe:ReferenceDialog>
+ property="expressions:booleanexpressions:ReferenceBooleanExpression: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/SingleSingleEAttributeValueEqualityExpression.xwt b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleSingleEAttributeValueEqualityExpression.xwt
new file mode 100755
index 00000000000..92c73213b56
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/properties/ui/SingleSingleEAttributeValueEqualityExpression.xwt
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite xmlns="http://www.eclipse.org/xwt/presentation"
+ xmlns:j="clr-namespace:java.lang"
+ xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
+ xmlns:x="http://www.eclipse.org/xwt">
+ <Composite.layout>
+ <ppel:PropertiesLayout></ppel:PropertiesLayout>
+ </Composite.layout>
+ <Composite>
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <ppe:StringEditor input="{Binding}"
+ property="expressions:IBasicExpressionElement:name"></ppe:StringEditor>
+ <ppe:StringEditor input="{Binding}"
+ property="expressions:IBasicExpressionElement:description"></ppe:StringEditor>
+ <ppe:StringEditor input="{Binding}"
+ property="expressions:booleanexpressions:SingleEAttributeValueEqualityExpression:expectedValue"></ppe:StringEditor>
+ </Composite>
+ <Composite>
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <ppe:ReferenceDialog input="{Binding}"
+ property="expressions:booleanexpressions:SingleEAttributeValueEqualityExpression:eAttribute"></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/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 788f2fb83fc..d1a1ed74381 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
@@ -21,11 +21,13 @@ import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.AndExpressio
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.booleanexpressions.SingleEAttributeValueEqualityExpression;
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.expressions.properties.modelelements.SingleEAttributeValueEqualityExpressionModelElement;
import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
import org.eclipse.papyrus.infra.properties.contexts.DataContextElement;
import org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement;
@@ -33,12 +35,12 @@ import org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElementFacto
/**
* Custom Factory for EMF Expressions
- *
+ *
*/
public class CustomExpressionsEMFModelElementFactory extends EMFModelElementFactory {
/**
- *
+ *
* @see org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElementFactory#doCreateFromSource(java.lang.Object, org.eclipse.papyrus.infra.properties.contexts.DataContextElement)
*
* @param sourceElement
@@ -55,17 +57,19 @@ public class CustomExpressionsEMFModelElementFactory extends EMFModelElementFact
if (sourceElement instanceof ReferenceBooleanExpression) {
return new ReferenceBooleanEObjectExpressionModelElement((EObject) sourceElement, EMFHelper.resolveEditingDomain(sourceElement));
}
- if(sourceElement instanceof AndExpression) {
+ if (sourceElement instanceof AndExpression) {
return new AndExpressionModelElement((EObject) sourceElement, EMFHelper.resolveEditingDomain(sourceElement));
}
- if(sourceElement instanceof OrExpression) {
+ if (sourceElement instanceof OrExpression) {
return new OrExpressionModelElement((EObject) sourceElement, EMFHelper.resolveEditingDomain(sourceElement));
}
- if(sourceElement instanceof NotExpression) {
+ if (sourceElement instanceof NotExpression) {
return new NotExpressionModelElement((EObject) sourceElement, EMFHelper.resolveEditingDomain(sourceElement));
}
+ if (sourceElement instanceof SingleEAttributeValueEqualityExpression) {
+ return new SingleEAttributeValueEqualityExpressionModelElement((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/SingleEAttributeValueEqualityExpressionModelElement.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/SingleEAttributeValueEqualityExpressionModelElement.java
new file mode 100755
index 00000000000..634b880d788
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/modelelements/SingleEAttributeValueEqualityExpressionModelElement.java
@@ -0,0 +1,82 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.properties.modelelements;
+
+import java.util.Set;
+import java.util.TreeSet;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.emf.ui.comparators.ENamedElementComparator;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression;
+import org.eclipse.papyrus.infra.emf.expressions.properties.provider.SingleEAttributeContentProvider;
+import org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement;
+import org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider;
+
+/**
+ * ModelElement to {@link SingleEAttributeValueEqualityExpression}
+ *
+ */
+public class SingleEAttributeValueEqualityExpressionModelElement extends EMFModelElement {
+
+ /**
+ * Constructor.
+ *
+ * @param source
+ * @param domain
+ */
+ public SingleEAttributeValueEqualityExpressionModelElement(final EObject source, final EditingDomain domain) {
+ super(source, domain);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param source
+ */
+ public SingleEAttributeValueEqualityExpressionModelElement(final EObject source) {
+ super(source);
+ }
+
+ /**
+ * @see org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement#getContentProvider(java.lang.String)
+ *
+ * @param propertyPath
+ * @return
+ */
+ @Override
+ public IStaticContentProvider getContentProvider(final String propertyPath) {
+ if (propertyPath.equals("eAttribute")) { //$NON-NLS-1$
+ final EditingDomain domain = getDomain();
+ final ResourceSet set = domain.getResourceSet();
+ final Set<EPackage> packages = new TreeSet<EPackage>(new ENamedElementComparator());
+
+ for (final Resource tmp : set.getResources()) {
+ for (EObject current : tmp.getContents()) {
+ final EPackage p = current.eClass().getEPackage();
+ packages.add(p);
+ }
+ }
+
+ return new SingleEAttributeContentProvider(packages);
+ }
+ 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/provider/SingleEAttributeContentProvider.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/provider/SingleEAttributeContentProvider.java
new file mode 100755
index 00000000000..06e74608644
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions.properties/src/org/eclipse/papyrus/infra/emf/expressions/properties/provider/SingleEAttributeContentProvider.java
@@ -0,0 +1,157 @@
+/*****************************************************************************
+* Copyright (c) 2019 CEA LIST.
+*
+*
+* All rights reserved. This program and the accompanying materials
+* are made available under the terms of the Eclipse Public License 2.0
+* which accompanies this distribution, and is available at
+* https://www.eclipse.org/legal/epl-2.0/
+*
+* SPDX-License-Identifier: EPL-2.0
+*
+* Contributors:
+* Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+*
+*****************************************************************************/
+
+
+package org.eclipse.papyrus.infra.emf.expressions.properties.provider;
+
+import java.util.Collection;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.jface.viewers.IContentProvider;
+import org.eclipse.jface.viewers.ITreeContentProvider;
+import org.eclipse.papyrus.infra.widgets.providers.IGraphicalContentProvider;
+import org.eclipse.papyrus.infra.widgets.providers.IHierarchicContentProvider;
+import org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ * This content provider allows to navigate until to final single EAttribute in EMF metamodel
+ *
+ */
+public class SingleEAttributeContentProvider implements IGraphicalContentProvider, IHierarchicContentProvider, IStaticContentProvider, ITreeContentProvider, IContentProvider {
+
+ /**
+ * The list of the EPackage to propose
+ */
+ private final Collection<EPackage> ePackages;
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param epackages
+ * the list of the EPackage to propose
+ */
+ public SingleEAttributeContentProvider(final Collection<EPackage> epackages) {
+ this.ePackages = epackages;
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.ITreeContentProvider#getElements(java.lang.Object)
+ *
+ * @param inputElement
+ * @return
+ */
+ @Override
+ public Object[] getElements(final Object inputElement) {
+ return ePackages.toArray();
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.ITreeContentProvider#getChildren(java.lang.Object)
+ *
+ * @param parentElement
+ * @return
+ */
+ @Override
+ public Object[] getChildren(final Object parentElement) {
+ if (parentElement instanceof EPackage) {
+ return ((EPackage) parentElement).eContents().toArray();
+ }
+ if (parentElement instanceof EClass) {
+ return ((EClass) parentElement).getEAllAttributes().toArray();
+ }
+ return new Object[0];
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.ITreeContentProvider#getParent(java.lang.Object)
+ *
+ * @param element
+ * @return
+ */
+ @Override
+ public Object getParent(final Object element) {
+ if (element instanceof EObject) {
+ return ((EObject) element).eContainer();
+ }
+ return null;
+ }
+
+ /**
+ * @see org.eclipse.jface.viewers.ITreeContentProvider#hasChildren(java.lang.Object)
+ *
+ * @param element
+ * @return
+ */
+ @Override
+ public boolean hasChildren(final Object element) {
+ if (element instanceof EObject) {
+ return ((EObject) element).eContents().size() > 0;
+ }
+ return false;
+ }
+
+ /**
+ * @see org.eclipse.papyrus.infra.widgets.providers.IStaticContentProvider#getElements()
+ *
+ * @return
+ */
+ @Override
+ public Object[] getElements() {
+ return ePackages.toArray();
+ }
+
+ /**
+ * @see org.eclipse.papyrus.infra.widgets.providers.IHierarchicContentProvider#isValidValue(java.lang.Object)
+ *
+ * @param element
+ * @return
+ */
+ @Override
+ public boolean isValidValue(final Object element) {
+ if (element instanceof EAttribute) {
+ final EAttribute attr = (EAttribute) element;
+ return !attr.isMany();
+ }
+ return false;
+ }
+
+ /**
+ * @see org.eclipse.papyrus.infra.widgets.providers.IGraphicalContentProvider#createBefore(org.eclipse.swt.widgets.Composite)
+ *
+ * @param parent
+ */
+ @Override
+ public void createBefore(Composite parent) {
+ // nothing to do
+ }
+
+ /**
+ * @see org.eclipse.papyrus.infra.widgets.providers.IGraphicalContentProvider#createAfter(org.eclipse.swt.widgets.Composite)
+ *
+ * @param parent
+ */
+ @Override
+ public void createAfter(Composite parent) {
+ // nothing to do
+ }
+
+
+}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/.classpath b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/.classpath
index 8dd013afc8b..50aae142c50 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/.classpath
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/.classpath
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
- <classpathentry kind="src" path="src-gen"/>
- <classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src-gen"/>
+ <classpathentry kind="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/.settings/org.eclipse.jdt.core.prefs b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/.settings/org.eclipse.jdt.core.prefs
index e62259848fc..49ce3e32edf 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/.settings/org.eclipse.jdt.core.prefs
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/.settings/org.eclipse.jdt.core.prefs
@@ -1,17 +1,18 @@
eclipse.preferences.version=1
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.targetPlatform=1.8
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
-org.eclipse.jdt.core.compiler.compliance=1.6
+org.eclipse.jdt.core.compiler.compliance=1.8
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.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.release=disabled
-org.eclipse.jdt.core.compiler.source=1.6
+org.eclipse.jdt.core.compiler.source=1.8
org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
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
@@ -19,17 +20,20 @@ org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_c
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_bitwise_operator=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_logical_operator=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_multiplicative_operator=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_string_concatenation=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
@@ -115,11 +119,12 @@ 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_additive_operator=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_bitwise_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
@@ -150,6 +155,8 @@ 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_logical_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=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
@@ -174,13 +181,17 @@ 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_relational_operator=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_shift_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=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_bitwise_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
@@ -228,6 +239,8 @@ org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do no
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_logical_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=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
@@ -264,9 +277,12 @@ org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not inser
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_relational_operator=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_shift_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=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
@@ -292,6 +308,10 @@ 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=false
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_additive_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
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 4d6e7d4464a..4261a17ca62 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
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.papyrus.infra.emf.expressions;singleton:=true
-Bundle-Version: 1.0.0.qualifier
+Bundle-Version: 1.1.0.qualifier
Bundle-ClassPath: .
Bundle-Vendor: %providerName
Bundle-Localization: plugin
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/icons/Expressions.gif b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/icons/Expressions.gif
new file mode 100755
index 00000000000..33d98dd390f
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/icons/Expressions.gif
Binary files differ
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.ecore b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.ecore
index 1e7282e0348..b5efbf2e369 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.ecore
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.ecore
@@ -60,7 +60,11 @@
upperBound="-1" eType="#//booleanexpressions/IBooleanEObjectExpression"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referencedExpressions"
- ordered="false" upperBound="-1" eType="#//booleanexpressions/IBooleanEObjectExpression"/>
+ ordered="false" upperBound="-1" eType="#//booleanexpressions/IBooleanEObjectExpression">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="propertyEditorFactory" value="http://www.eclipse.org/papyrus/expressions/multiBooleanExpressionsReference"/>
+ </eAnnotations>
+ </eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IBooleanEObjectExpression" abstract="true"
interface="true">
@@ -91,7 +95,11 @@
upperBound="-1" eType="#//booleanexpressions/IBooleanEObjectExpression"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referencedExpressions"
- ordered="false" upperBound="-1" eType="#//booleanexpressions/IBooleanEObjectExpression"/>
+ ordered="false" upperBound="-1" eType="#//booleanexpressions/IBooleanEObjectExpression">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="propertyEditorFactory" value="http://www.eclipse.org/papyrus/expressions/multiBooleanExpressionsReference"/>
+ </eAnnotations>
+ </eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="NotExpression" eSuperTypes="#//booleanexpressions/IBooleanEObjectExpression">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -100,7 +108,11 @@
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedExpression" ordered="false"
eType="#//booleanexpressions/IBooleanEObjectExpression" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referencedExpression"
- ordered="false" eType="#//booleanexpressions/IBooleanEObjectExpression"/>
+ ordered="false" eType="#//booleanexpressions/IBooleanEObjectExpression">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="propertyEditorFactory" value="http://www.eclipse.org/papyrus/expressions/singleBooleanExpressionReference"/>
+ </eAnnotations>
+ </eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LiteralTrueExpression" eSuperTypes="#//booleanexpressions/IBooleanEObjectExpression">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
@@ -115,9 +127,29 @@
<eClassifiers xsi:type="ecore:EClass" name="ReferenceBooleanExpression" eSuperTypes="#//booleanexpressions/IBooleanEObjectExpression">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="This expression allows to reference an expression defined in another model.&#xD;&#xA;If there is no expression referenced we return TRUE."/>
+ <details key="propertyEditorFactory" value="http://www.eclipse.org/papyrus/expressions/singleBooleanExpressionReference"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referencedExpression"
ordered="false" eType="#//booleanexpressions/IBooleanEObjectExpression"/>
</eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="SingleEAttributeValueEqualityExpression"
+ eSuperTypes="#//booleanexpressions/IBooleanEObjectExpression">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="This expression allows to check if the eAttribute value is equals to the expected one. &#xD;&#xA;This expression returns false in all cases, expected when the expectedValue is equals to the current value."/>
+ </eAnnotations>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="eAttribute" ordered="false"
+ eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAttribute">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The eAttribute to check."/>
+ <details key="propertyEditorFactory" value="http://www.eclipse.org/papyrus/expressions/singleEAttributeReference"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="expectedValue" ordered="false"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The expected value for the EAttribute."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
</eSubpackages>
</ecore:EPackage>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.genmodel b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.genmodel
index 29dd1e3f0a0..b69e4f03b2c 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.genmodel
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.genmodel
@@ -81,9 +81,17 @@
<genClasses xsi:type="genmodel:GenClass" ecoreClass="expressions.ecore#//booleanexpressions/LiteralTrueExpression"/>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="expressions.ecore#//booleanexpressions/LiteralFalseExpression"/>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="expressions.ecore#//booleanexpressions/ReferenceBooleanExpression">
+ <genAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="propertyEditorFactory" value="http://www.eclipse.org/papyrus/expressions/singleBooleanExpressionReference"/>
+ </genAnnotations>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference expressions.ecore#//booleanexpressions/ReferenceBooleanExpression/referencedExpression"/>
</genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="expressions.ecore#//booleanexpressions/SingleEAttributeValueEqualityExpression">
+ <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+ propertySortChoices="true" ecoreFeature="ecore:EReference expressions.ecore#//booleanexpressions/SingleEAttributeValueEqualityExpression/eAttribute"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute expressions.ecore#//booleanexpressions/SingleEAttributeValueEqualityExpression/expectedValue"/>
+ </genClasses>
</nestedGenPackages>
</genPackages>
</genmodel:GenModel>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.notation b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.notation
index 2eb2392b0ef..2be51c4db8f 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.notation
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.notation
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
-<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:gmfdiagrepresentation="http://www.eclipse.org/papyrus/infra/gmfdiag/representation" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
<notation:Diagram xmi:id="_s8chYBUjEee_D4EhwjboOQ" type="PapyrusUMLClassDiagram" name="BasicExpressionClassDiagram" measurementUnit="Pixel">
<children xmi:type="notation:Shape" xmi:id="_T6M6ABUlEee_D4EhwjboOQ" type="Interface_Shape">
<children xmi:type="notation:DecorationNode" xmi:id="_T6NhEBUlEee_D4EhwjboOQ" type="Interface_NameLabel"/>
@@ -128,7 +128,7 @@
<element xmi:type="uml:Comment" href="expressions.uml#_TxCMwCaFEeexSJ7rHbRCGQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_TxEB8SaFEeexSJ7rHbRCGQ" x="1360" y="-200" width="361" height="101"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_s8chYRUjEee_D4EhwjboOQ" name="diagram_compatibility_version" stringValue="1.3.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_s8chYRUjEee_D4EhwjboOQ" name="diagram_compatibility_version" stringValue="1.4.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_s8chYhUjEee_D4EhwjboOQ"/>
<styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_s8chYxUjEee_D4EhwjboOQ" diagramKindId="org.eclipse.papyrus.uml.diagram.class">
<owner xmi:type="uml:Model" href="expressions.uml#_s7iicBUjEee_D4EhwjboOQ"/>
@@ -504,7 +504,7 @@
<element xmi:type="uml:Interface" href="expressions.uml#_yFQYgBtpEeeNbZVCoqtPGQ"/>
<layoutConstraint xmi:type="notation:Bounds" xmi:id="_yFTb0RtpEeeNbZVCoqtPGQ" x="540" y="-40" width="323" height="100"/>
</children>
- <styles xmi:type="notation:StringValueStyle" xmi:id="_E-Du8RXiEee_D4EhwjboOQ" name="diagram_compatibility_version" stringValue="1.3.0"/>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_E-Du8RXiEee_D4EhwjboOQ" name="diagram_compatibility_version" stringValue="1.4.0"/>
<styles xmi:type="notation:DiagramStyle" xmi:id="_E-Du8hXiEee_D4EhwjboOQ"/>
<styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_E-Du8xXiEee_D4EhwjboOQ" diagramKindId="org.eclipse.papyrus.uml.diagram.class">
<owner xmi:type="uml:Package" href="expressions.uml#_0cNGMBXhEee_D4EhwjboOQ"/>
@@ -913,4 +913,88 @@
<targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_hHfdkRtuEeeI-LWWg9sIYg" id="(0.30959752321981426,1.0)"/>
</edges>
</notation:Diagram>
+ <notation:Diagram xmi:id="_ksJ-MI3OEemaCNM_5JlkJw" type="PapyrusUMLClassDiagram" name="EMFExpression" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_nDRmkI3OEemaCNM_5JlkJw" type="Interface_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_nDV4AI3OEemaCNM_5JlkJw" type="Interface_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_nDV4AY3OEemaCNM_5JlkJw" type="Interface_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_nDV4Ao3OEemaCNM_5JlkJw" y="15"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nDV4A43OEemaCNM_5JlkJw" type="Interface_AttributeCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nDV4BI3OEemaCNM_5JlkJw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nDV4BY3OEemaCNM_5JlkJw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nDV4Bo3OEemaCNM_5JlkJw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nDV4B43OEemaCNM_5JlkJw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nDWfEI3OEemaCNM_5JlkJw" type="Interface_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nDWfEY3OEemaCNM_5JlkJw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nDWfEo3OEemaCNM_5JlkJw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nDWfE43OEemaCNM_5JlkJw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nDWfFI3OEemaCNM_5JlkJw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_nDWfFY3OEemaCNM_5JlkJw" type="Interface_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_nDWfFo3OEemaCNM_5JlkJw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_nDWfF43OEemaCNM_5JlkJw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_nDWfGI3OEemaCNM_5JlkJw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nDWfGY3OEemaCNM_5JlkJw"/>
+ </children>
+ <element xmi:type="uml:Interface" href="expressions.uml#_P-MkYBVaEee_D4EhwjboOQ"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nDRmkY3OEemaCNM_5JlkJw" x="700" y="120" width="281"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_sI740I3OEemaCNM_5JlkJw" type="Class_Shape">
+ <children xmi:type="notation:DecorationNode" xmi:id="_sI740o3OEemaCNM_5JlkJw" type="Class_NameLabel"/>
+ <children xmi:type="notation:DecorationNode" xmi:id="_sI74043OEemaCNM_5JlkJw" type="Class_FloatingNameLabel">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_sI741I3OEemaCNM_5JlkJw" y="15"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_sI741Y3OEemaCNM_5JlkJw" type="Class_AttributeCompartment">
+ <children xmi:type="notation:Shape" xmi:id="_z6Oq4I3OEemaCNM_5JlkJw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="expressions.uml#_z6B2kI3OEemaCNM_5JlkJw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_z6Oq4Y3OEemaCNM_5JlkJw"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_5hTBEI3OEemaCNM_5JlkJw" type="Property_ClassAttributeLabel">
+ <element xmi:type="uml:Property" href="expressions.uml#_5hKeMI3OEemaCNM_5JlkJw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_5hTBEY3OEemaCNM_5JlkJw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_sI741o3OEemaCNM_5JlkJw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_sI74143OEemaCNM_5JlkJw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_sI742I3OEemaCNM_5JlkJw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sI742Y3OEemaCNM_5JlkJw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_sI8f4I3OEemaCNM_5JlkJw" type="Class_OperationCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_sI8f4Y3OEemaCNM_5JlkJw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_sI8f4o3OEemaCNM_5JlkJw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_sI8f443OEemaCNM_5JlkJw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sI8f5I3OEemaCNM_5JlkJw"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_sI8f5Y3OEemaCNM_5JlkJw" type="Class_NestedClassifierCompartment">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_sI8f5o3OEemaCNM_5JlkJw"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_sI8f543OEemaCNM_5JlkJw"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_sI8f6I3OEemaCNM_5JlkJw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sI8f6Y3OEemaCNM_5JlkJw"/>
+ </children>
+ <element xmi:type="uml:Class" href="expressions.uml#_sIyu4I3OEemaCNM_5JlkJw"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sI740Y3OEemaCNM_5JlkJw" x="700" y="360" width="261"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_ksJ-MY3OEemaCNM_5JlkJw" name="diagram_compatibility_version" stringValue="1.4.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_ksJ-Mo3OEemaCNM_5JlkJw"/>
+ <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_ksJ-M43OEemaCNM_5JlkJw" diagramKindId="org.eclipse.papyrus.uml.diagram.class">
+ <owner xmi:type="uml:Package" href="expressions.uml#_0cNGMBXhEee_D4EhwjboOQ"/>
+ </styles>
+ <element xmi:type="uml:Package" href="expressions.uml#_0cNGMBXhEee_D4EhwjboOQ"/>
+ <edges xmi:type="notation:Connector" xmi:id="_NB2PkI3PEemaCNM_5JlkJw" type="InterfaceRealization_Edge" source="_sI740I3OEemaCNM_5JlkJw" target="_nDRmkI3OEemaCNM_5JlkJw">
+ <children xmi:type="notation:DecorationNode" xmi:id="_NB22oI3PEemaCNM_5JlkJw" type="InterfaceRealization_StereotypeLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_NYa8gI3PEemaCNM_5JlkJw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_NB22oY3PEemaCNM_5JlkJw" y="39"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_NB22oo3PEemaCNM_5JlkJw" type="InterfaceRealization_NameLabel">
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_NYmisI3PEemaCNM_5JlkJw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_NB22o43PEemaCNM_5JlkJw" y="59"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_NB2PkY3PEemaCNM_5JlkJw"/>
+ <element xmi:type="uml:InterfaceRealization" href="expressions.uml#_NBlw4I3PEemaCNM_5JlkJw"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_NB2Pko3PEemaCNM_5JlkJw" points="[320, 520, -643984, -643984]$[780, 224, -643984, -643984]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NCRGUI3PEemaCNM_5JlkJw" id="(0.3831417624521073,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_NCRGUY3PEemaCNM_5JlkJw" id="(0.35587188612099646,1.0)"/>
+ </edges>
+ </notation:Diagram>
+ <notation:Diagram xmi:id="_wR8uoJDZEemH9rXHQn6H-Q" type="emftree" name="Emf Tree"/>
</xmi:XMI>
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.uml b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.uml
index dae655e198e..7a4754335a4 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.uml
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/model/expressions.uml
@@ -97,6 +97,9 @@ If there is no expression referenced we return TRUE.</body>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_eU5uwBVbEee_D4EhwjboOQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_mbMYshn2EeeYEuQJkmbFAA" name="referencedExpressions" type="_P-MkYBVaEee_D4EhwjboOQ" association="_mbLxoBn2EeeYEuQJkmbFAA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_dJVfYI6yEemjwpaBkaWY0Q" source="http://www.eclipse.org/emf/2002/GenModel">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_dJVfYY6yEemjwpaBkaWY0Q" key="propertyEditorFactory" value="http://www.eclipse.org/papyrus/expressions/multiBooleanExpressionsReference"/>
+ </eAnnotations>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_yV2M0Bn2EeeYEuQJkmbFAA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_yWOnUBn2EeeYEuQJkmbFAA" value="*"/>
</ownedAttribute>
@@ -117,6 +120,9 @@ If there is no expression referenced we return TRUE.</body>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_GHQWMBXjEee_D4EhwjboOQ" value="*"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_ltwD4Bn2EeeYEuQJkmbFAA" name="referencedExpressions" type="_P-MkYBVaEee_D4EhwjboOQ" association="_ltsZgBn2EeeYEuQJkmbFAA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cHlugI6yEemjwpaBkaWY0Q" source="http://www.eclipse.org/emf/2002/GenModel">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cHlugY6yEemjwpaBkaWY0Q" key="propertyEditorFactory" value="http://www.eclipse.org/papyrus/expressions/multiBooleanExpressionsReference"/>
+ </eAnnotations>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_rHd6kBn2EeeYEuQJkmbFAA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_rHlPUBn2EeeYEuQJkmbFAA" value="*"/>
</ownedAttribute>
@@ -128,6 +134,9 @@ If there is no expression referenced we return TRUE.</body>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_9ytRsBn2EeeYEuQJkmbFAA" value="1"/>
</ownedAttribute>
<ownedAttribute xmi:type="uml:Property" xmi:id="_nhG34Bn2EeeYEuQJkmbFAA" name="referencedExpression" type="_P-MkYBVaEee_D4EhwjboOQ" association="_nhEboBn2EeeYEuQJkmbFAA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bZhuoI6yEemjwpaBkaWY0Q" source="http://www.eclipse.org/emf/2002/GenModel">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bZhuoY6yEemjwpaBkaWY0Q" key="propertyEditorFactory" value="http://www.eclipse.org/papyrus/expressions/singleBooleanExpressionReference"/>
+ </eAnnotations>
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-gm5gBn2EeeYEuQJkmbFAA"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_-htswBn2EeeYEuQJkmbFAA" value="1"/>
</ownedAttribute>
@@ -167,6 +176,9 @@ If there is no expression referenced we return TRUE.</body>
<ownedEnd xmi:type="uml:Property" xmi:id="_nhHe8Bn2EeeYEuQJkmbFAA" name="notexpression" type="_3NcCQBXiEee_D4EhwjboOQ" association="_nhEboBn2EeeYEuQJkmbFAA"/>
</packagedElement>
<packagedElement xmi:type="uml:Class" xmi:id="_oU_pgBrTEeeJdcoPLKQK3g" name="ReferenceBooleanExpression">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_uWcIkJD3EembtcUdk7EePw" source="http://www.eclipse.org/emf/2002/GenModel">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_uWcIkZD3EembtcUdk7EePw" key="propertyEditorFactory" value="http://www.eclipse.org/papyrus/expressions/singleBooleanExpressionReference"/>
+ </eAnnotations>
<ownedAttribute xmi:type="uml:Property" xmi:id="_rnZOYBrTEeeJdcoPLKQK3g" name="referencedExpression" type="_P-MkYBVaEee_D4EhwjboOQ" association="_rnWLEBrTEeeJdcoPLKQK3g">
<lowerValue xmi:type="uml:LiteralInteger" xmi:id="_H0rjgBrUEeeJdcoPLKQK3g"/>
<upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_H1QyUBrUEeeJdcoPLKQK3g" value="1"/>
@@ -192,6 +204,30 @@ If there is no expression referenced we return TRUE.</body>
<generalization xmi:type="uml:Generalization" xmi:id="_hAyYoBtuEeeI-LWWg9sIYg" general="_T6J2sBUlEee_D4EhwjboOQ"/>
<nestedClassifier xmi:type="uml:Class" xmi:id="_A4OoIBtrEeeNbZVCoqtPGQ" name="REDEFINED_CONTEXT_TYPE" templateParameter="_7vGyMBtqEeeNbZVCoqtPGQ"/>
</packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_sIyu4I3OEemaCNM_5JlkJw" name="SingleEAttributeValueEqualityExpression">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_MKE6EI3PEemaCNM_5JlkJw" annotatedElement="_sIyu4I3OEemaCNM_5JlkJw">
+ <body>This expression allows to check if the eAttribute value is equals to the expected one. &#xD;
+This expression returns false in all cases, expected when the expectedValue is equals to the current value.</body>
+ </ownedComment>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_z6B2kI3OEemaCNM_5JlkJw" name="eAttribute">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hhHRkI6qEemjwpaBkaWY0Q" source="http://www.eclipse.org/emf/2002/GenModel">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_z1BGwI6qEemjwpaBkaWY0Q" key="propertyEditorFactory" value="http://www.eclipse.org/papyrus/expressions/singleEAttributeReference"/>
+ </eAnnotations>
+ <ownedComment xmi:type="uml:Comment" xmi:id="_R3TioI3PEemaCNM_5JlkJw" annotatedElement="_z6B2kI3OEemaCNM_5JlkJw">
+ <body>The eAttribute to check.</body>
+ </ownedComment>
+ <type xmi:type="uml:Class" href="pathmap://ECORE_METAMODEL_LIBRARY/Ecore.uml#_SeWiQcX_EduPJbEsMYXjUQ"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_300RII3OEemaCNM_5JlkJw"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_5hKeMI3OEemaCNM_5JlkJw" name="expectedValue">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_URzPII3PEemaCNM_5JlkJw" annotatedElement="_5hKeMI3OEemaCNM_5JlkJw">
+ <body>The expected value for the EAttribute.</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EString"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-SKvEI3OEemaCNM_5JlkJw"/>
+ </ownedAttribute>
+ <interfaceRealization xmi:type="uml:InterfaceRealization" xmi:id="_NBlw4I3PEemaCNM_5JlkJw" client="_sIyu4I3OEemaCNM_5JlkJw" supplier="_P-MkYBVaEee_D4EhwjboOQ" contract="_P-MkYBVaEee_D4EhwjboOQ"/>
+ </packagedElement>
</packagedElement>
<packagedElement xmi:type="uml:Interface" xmi:id="_-hQYgBqgEeex7OKxnYgv8Q" name="IBasicExpressionElement">
<ownedAttribute xmi:type="uml:Property" xmi:id="_6fy8MBUkEee_D4EhwjboOQ" name="name">
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 4a23cd6ae05..a36fc66dc71 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
@@ -14,4 +14,4 @@
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
+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.
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/plugin.xml b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/plugin.xml
index 2f787aa5ef2..2be5da104bd 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/plugin.xml
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/plugin.xml
@@ -61,7 +61,8 @@
point="org.eclipse.papyrus.uml.extensionpoints.UMLLibrary">
<library
description="The basic uml model for expression"
- name="Expressions"
+ iconpath="icons/Expressions.gif"
+ name="Papyrus-EMFExpressions (Internal)"
path="pathmap://EXPRESSIONS//expressions.uml">
</library>
</extension>
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 6e7ca35450b..e821889dc61 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
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
@@ -8,7 +9,7 @@
<version>0.0.1-SNAPSHOT</version>
</parent>
<artifactId>org.eclipse.papyrus.infra.emf.expressions</artifactId>
- <version>1.0.0-SNAPSHOT</version>
+ <version>1.1.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-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/AndExpression.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/AndExpression.java
index 80fbe97e06d..4417c4126bd 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/AndExpression.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/AndExpression.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions;
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/BooleanExpressionsFactory.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/BooleanExpressionsFactory.java
index 19a6539e7a0..4eb7070a2cb 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/BooleanExpressionsFactory.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/BooleanExpressionsFactory.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions;
@@ -88,6 +87,15 @@ public interface BooleanExpressionsFactory extends EFactory {
ReferenceBooleanExpression createReferenceBooleanExpression();
/**
+ * Returns a new object of class '<em>Single EAttribute Value Equality Expression</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Single EAttribute Value Equality Expression</em>'.
+ * @generated
+ */
+ SingleEAttributeValueEqualityExpression createSingleEAttributeValueEqualityExpression();
+
+ /**
* Returns the package supported by this factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/BooleanExpressionsPackage.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/BooleanExpressionsPackage.java
index 2508a2b08a6..b9c51c1c529 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/BooleanExpressionsPackage.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/BooleanExpressionsPackage.java
@@ -1,19 +1,19 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions;
+import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
@@ -573,6 +573,79 @@ public interface BooleanExpressionsPackage extends EPackage {
*/
int REFERENCE_BOOLEAN_EXPRESSION_OPERATION_COUNT = IBOOLEAN_EOBJECT_EXPRESSION_OPERATION_COUNT + 0;
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.SingleEAttributeValueEqualityExpressionImpl <em>Single EAttribute Value Equality Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.SingleEAttributeValueEqualityExpressionImpl
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.BooleanExpressionsPackageImpl#getSingleEAttributeValueEqualityExpression()
+ * @generated
+ */
+ int SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION = 8;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__NAME = IBOOLEAN_EOBJECT_EXPRESSION__NAME;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__DESCRIPTION = IBOOLEAN_EOBJECT_EXPRESSION__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>EAttribute</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EATTRIBUTE = IBOOLEAN_EOBJECT_EXPRESSION_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Expected Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EXPECTED_VALUE = IBOOLEAN_EOBJECT_EXPRESSION_FEATURE_COUNT + 1;
+
+ /**
+ * The number of structural features of the '<em>Single EAttribute Value Equality Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION_FEATURE_COUNT = IBOOLEAN_EOBJECT_EXPRESSION_FEATURE_COUNT + 2;
+
+ /**
+ * The operation id for the '<em>Evaluate</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION___EVALUATE__OBJECT = IBOOLEAN_EOBJECT_EXPRESSION___EVALUATE__OBJECT;
+
+ /**
+ * The number of operations of the '<em>Single EAttribute Value Equality Expression</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION_OPERATION_COUNT = IBOOLEAN_EOBJECT_EXPRESSION_OPERATION_COUNT + 0;
+
/**
* Returns the meta object for class '{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.OrExpression <em>Or Expression</em>}'.
@@ -732,6 +805,38 @@ public interface BooleanExpressionsPackage extends EPackage {
EReference getReferenceBooleanExpression_ReferencedExpression();
/**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression <em>Single EAttribute Value Equality Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Single EAttribute Value Equality Expression</em>'.
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression
+ * @generated
+ */
+ EClass getSingleEAttributeValueEqualityExpression();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression#getEAttribute <em>EAttribute</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference '<em>EAttribute</em>'.
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression#getEAttribute()
+ * @see #getSingleEAttributeValueEqualityExpression()
+ * @generated
+ */
+ EReference getSingleEAttributeValueEqualityExpression_EAttribute();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression#getExpectedValue <em>Expected Value</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the attribute '<em>Expected Value</em>'.
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression#getExpectedValue()
+ * @see #getSingleEAttributeValueEqualityExpression()
+ * @generated
+ */
+ EAttribute getSingleEAttributeValueEqualityExpression_ExpectedValue();
+
+ /**
* Returns the factory that creates the instances of the model.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -890,6 +995,32 @@ public interface BooleanExpressionsPackage extends EPackage {
*/
EReference REFERENCE_BOOLEAN_EXPRESSION__REFERENCED_EXPRESSION = eINSTANCE.getReferenceBooleanExpression_ReferencedExpression();
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.SingleEAttributeValueEqualityExpressionImpl <em>Single EAttribute Value Equality Expression</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.SingleEAttributeValueEqualityExpressionImpl
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.BooleanExpressionsPackageImpl#getSingleEAttributeValueEqualityExpression()
+ * @generated
+ */
+ EClass SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION = eINSTANCE.getSingleEAttributeValueEqualityExpression();
+
+ /**
+ * The meta object literal for the '<em><b>EAttribute</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EATTRIBUTE = eINSTANCE.getSingleEAttributeValueEqualityExpression_EAttribute();
+
+ /**
+ * The meta object literal for the '<em><b>Expected Value</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EAttribute SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EXPECTED_VALUE = eINSTANCE.getSingleEAttributeValueEqualityExpression_ExpectedValue();
+
}
} //BooleanExpressionsPackage
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/IBooleanEObjectExpression.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/IBooleanEObjectExpression.java
index db310a7e4f1..19d526ab129 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/IBooleanEObjectExpression.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/IBooleanEObjectExpression.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions;
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/IBooleanExpression.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/IBooleanExpression.java
index afb590c2929..a6e554998da 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/IBooleanExpression.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/IBooleanExpression.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions;
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/LiteralFalseExpression.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/LiteralFalseExpression.java
index 1bf296af5f7..35a16dae8eb 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/LiteralFalseExpression.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/LiteralFalseExpression.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions;
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/LiteralTrueExpression.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/LiteralTrueExpression.java
index fdce635755b..ee5f3f76a33 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/LiteralTrueExpression.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/LiteralTrueExpression.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions;
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/NotExpression.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/NotExpression.java
index 10ccf9e2b98..0f3f03db133 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/NotExpression.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/NotExpression.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions;
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/OrExpression.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/OrExpression.java
index 9ae88c2a877..02d730f2109 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/OrExpression.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/OrExpression.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions;
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/ReferenceBooleanExpression.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/ReferenceBooleanExpression.java
index ef5aed76826..16496c5520c 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/ReferenceBooleanExpression.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/ReferenceBooleanExpression.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions;
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/SingleEAttributeValueEqualityExpression.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/SingleEAttributeValueEqualityExpression.java
new file mode 100755
index 00000000000..29b32cdf8c1
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/SingleEAttributeValueEqualityExpression.java
@@ -0,0 +1,91 @@
+/**
+ * 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions;
+
+import org.eclipse.emf.ecore.EAttribute;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Single EAttribute Value Equality Expression</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * This expression allows to check if the eAttribute value is equals to the expected one.
+ * This expression returns false in all cases, expected when the expectedValue is equals to the current value.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression#getEAttribute <em>EAttribute</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression#getExpectedValue <em>Expected Value</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.BooleanExpressionsPackage#getSingleEAttributeValueEqualityExpression()
+ * @model
+ * @generated
+ */
+public interface SingleEAttributeValueEqualityExpression extends IBooleanEObjectExpression {
+ /**
+ * Returns the value of the '<em><b>EAttribute</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The eAttribute to check.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>EAttribute</em>' reference.
+ * @see #setEAttribute(EAttribute)
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.BooleanExpressionsPackage#getSingleEAttributeValueEqualityExpression_EAttribute()
+ * @model ordered="false"
+ * @generated
+ */
+ EAttribute getEAttribute();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression#getEAttribute <em>EAttribute</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>EAttribute</em>' reference.
+ * @see #getEAttribute()
+ * @generated
+ */
+ void setEAttribute(EAttribute value);
+
+ /**
+ * Returns the value of the '<em><b>Expected Value</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The expected value for the EAttribute.
+ * <!-- end-model-doc -->
+ * @return the value of the '<em>Expected Value</em>' attribute.
+ * @see #setExpectedValue(String)
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.BooleanExpressionsPackage#getSingleEAttributeValueEqualityExpression_ExpectedValue()
+ * @model ordered="false"
+ * @generated
+ */
+ String getExpectedValue();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression#getExpectedValue <em>Expected Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @param value the new value of the '<em>Expected Value</em>' attribute.
+ * @see #getExpectedValue()
+ * @generated
+ */
+ void setExpectedValue(String value);
+
+} // SingleEAttributeValueEqualityExpression
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/AndExpressionImpl.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/AndExpressionImpl.java
index ef23d592a35..71fc93b6992 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/AndExpressionImpl.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/AndExpressionImpl.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl;
@@ -139,6 +138,7 @@ public class AndExpressionImpl extends MinimalEObjectImpl.Container implements A
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getName() {
return name;
}
@@ -148,6 +148,7 @@ public class AndExpressionImpl extends MinimalEObjectImpl.Container implements A
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setName(String newName) {
String oldName = name;
name = newName;
@@ -160,6 +161,7 @@ public class AndExpressionImpl extends MinimalEObjectImpl.Container implements A
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getDescription() {
return description;
}
@@ -169,6 +171,7 @@ public class AndExpressionImpl extends MinimalEObjectImpl.Container implements A
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setDescription(String newDescription) {
String oldDescription = description;
description = newDescription;
@@ -181,6 +184,7 @@ public class AndExpressionImpl extends MinimalEObjectImpl.Container implements A
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EList<IBooleanEObjectExpression> getOwnedExpressions() {
if (ownedExpressions == null) {
ownedExpressions = new EObjectContainmentEList<IBooleanEObjectExpression>(IBooleanEObjectExpression.class, this, BooleanExpressionsPackage.AND_EXPRESSION__OWNED_EXPRESSIONS);
@@ -193,6 +197,7 @@ public class AndExpressionImpl extends MinimalEObjectImpl.Container implements A
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EList<IBooleanEObjectExpression> getReferencedExpressions() {
if (referencedExpressions == null) {
referencedExpressions = new EObjectResolvingEList<IBooleanEObjectExpression>(IBooleanEObjectExpression.class, this, BooleanExpressionsPackage.AND_EXPRESSION__REFERENCED_EXPRESSIONS);
@@ -339,7 +344,7 @@ public class AndExpressionImpl extends MinimalEObjectImpl.Container implements A
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (name: "); //$NON-NLS-1$
result.append(name);
result.append(", description: "); //$NON-NLS-1$
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/BooleanExpressionsFactoryImpl.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/BooleanExpressionsFactoryImpl.java
index 1eac07ad285..81b6f2ed341 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/BooleanExpressionsFactoryImpl.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/BooleanExpressionsFactoryImpl.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl;
@@ -74,6 +73,7 @@ public class BooleanExpressionsFactoryImpl extends EFactoryImpl implements Boole
case BooleanExpressionsPackage.LITERAL_TRUE_EXPRESSION: return createLiteralTrueExpression();
case BooleanExpressionsPackage.LITERAL_FALSE_EXPRESSION: return createLiteralFalseExpression();
case BooleanExpressionsPackage.REFERENCE_BOOLEAN_EXPRESSION: return createReferenceBooleanExpression();
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION: return createSingleEAttributeValueEqualityExpression();
default:
throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); //$NON-NLS-1$ //$NON-NLS-2$
}
@@ -84,6 +84,7 @@ public class BooleanExpressionsFactoryImpl extends EFactoryImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public OrExpression createOrExpression() {
OrExpressionImpl orExpression = new OrExpressionImpl();
return orExpression;
@@ -94,6 +95,7 @@ public class BooleanExpressionsFactoryImpl extends EFactoryImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public AndExpression createAndExpression() {
AndExpressionImpl andExpression = new AndExpressionImpl();
return andExpression;
@@ -104,6 +106,7 @@ public class BooleanExpressionsFactoryImpl extends EFactoryImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public NotExpression createNotExpression() {
NotExpressionImpl notExpression = new NotExpressionImpl();
return notExpression;
@@ -114,6 +117,7 @@ public class BooleanExpressionsFactoryImpl extends EFactoryImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public LiteralTrueExpression createLiteralTrueExpression() {
LiteralTrueExpressionImpl literalTrueExpression = new LiteralTrueExpressionImpl();
return literalTrueExpression;
@@ -124,6 +128,7 @@ public class BooleanExpressionsFactoryImpl extends EFactoryImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public LiteralFalseExpression createLiteralFalseExpression() {
LiteralFalseExpressionImpl literalFalseExpression = new LiteralFalseExpressionImpl();
return literalFalseExpression;
@@ -134,6 +139,7 @@ public class BooleanExpressionsFactoryImpl extends EFactoryImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public ReferenceBooleanExpression createReferenceBooleanExpression() {
ReferenceBooleanExpressionImpl referenceBooleanExpression = new ReferenceBooleanExpressionImpl();
return referenceBooleanExpression;
@@ -144,6 +150,18 @@ public class BooleanExpressionsFactoryImpl extends EFactoryImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
+ public SingleEAttributeValueEqualityExpression createSingleEAttributeValueEqualityExpression() {
+ SingleEAttributeValueEqualityExpressionImpl singleEAttributeValueEqualityExpression = new SingleEAttributeValueEqualityExpressionImpl();
+ return singleEAttributeValueEqualityExpression;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public BooleanExpressionsPackage getBooleanExpressionsPackage() {
return (BooleanExpressionsPackage)getEPackage();
}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/BooleanExpressionsPackageImpl.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/BooleanExpressionsPackageImpl.java
index d609da659b2..f19a1d1a67e 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/BooleanExpressionsPackageImpl.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/BooleanExpressionsPackageImpl.java
@@ -1,26 +1,26 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl;
+import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EGenericType;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.EReference;
import org.eclipse.emf.ecore.ETypeParameter;
-
import org.eclipse.emf.ecore.EcorePackage;
+
import org.eclipse.emf.ecore.impl.EPackageImpl;
import org.eclipse.papyrus.infra.emf.expressions.ExpressionsPackage;
@@ -35,6 +35,7 @@ import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.LiteralTrueE
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.booleanexpressions.SingleEAttributeValueEqualityExpression;
import org.eclipse.papyrus.infra.emf.expressions.impl.ExpressionsPackageImpl;
@@ -102,6 +103,13 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
private EClass referenceBooleanExpressionEClass = null;
/**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass singleEAttributeValueEqualityExpressionEClass = null;
+
+ /**
* Creates an instance of the model <b>Package</b>, registered with
* {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
* package URI value.
@@ -129,7 +137,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
/**
* Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
- *
+ *
* <p>This method is used to initialize {@link BooleanExpressionsPackage#eINSTANCE} when that field is accessed.
* Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
* <!-- begin-user-doc -->
@@ -143,7 +151,8 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
if (isInited) return (BooleanExpressionsPackage)EPackage.Registry.INSTANCE.getEPackage(BooleanExpressionsPackage.eNS_URI);
// Obtain or create and register package
- BooleanExpressionsPackageImpl theBooleanExpressionsPackage = (BooleanExpressionsPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof BooleanExpressionsPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new BooleanExpressionsPackageImpl());
+ Object registeredBooleanExpressionsPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ BooleanExpressionsPackageImpl theBooleanExpressionsPackage = registeredBooleanExpressionsPackage instanceof BooleanExpressionsPackageImpl ? (BooleanExpressionsPackageImpl)registeredBooleanExpressionsPackage : new BooleanExpressionsPackageImpl();
isInited = true;
@@ -151,7 +160,8 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
EcorePackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- ExpressionsPackageImpl theExpressionsPackage = (ExpressionsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(ExpressionsPackage.eNS_URI) instanceof ExpressionsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(ExpressionsPackage.eNS_URI) : ExpressionsPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(ExpressionsPackage.eNS_URI);
+ ExpressionsPackageImpl theExpressionsPackage = (ExpressionsPackageImpl)(registeredPackage instanceof ExpressionsPackageImpl ? registeredPackage : ExpressionsPackage.eINSTANCE);
// Create package meta-data objects
theBooleanExpressionsPackage.createPackageContents();
@@ -164,7 +174,6 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
// Mark meta-data to indicate it can't be changed
theBooleanExpressionsPackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(BooleanExpressionsPackage.eNS_URI, theBooleanExpressionsPackage);
return theBooleanExpressionsPackage;
@@ -175,6 +184,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EClass getOrExpression() {
return orExpressionEClass;
}
@@ -184,6 +194,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EReference getOrExpression_OwnedExpressions() {
return (EReference)orExpressionEClass.getEStructuralFeatures().get(0);
}
@@ -193,6 +204,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EReference getOrExpression_ReferencedExpressions() {
return (EReference)orExpressionEClass.getEStructuralFeatures().get(1);
}
@@ -202,6 +214,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EClass getIBooleanEObjectExpression() {
return iBooleanEObjectExpressionEClass;
}
@@ -211,6 +224,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EClass getIBooleanExpression() {
return iBooleanExpressionEClass;
}
@@ -220,6 +234,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EClass getAndExpression() {
return andExpressionEClass;
}
@@ -229,6 +244,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EReference getAndExpression_OwnedExpressions() {
return (EReference)andExpressionEClass.getEStructuralFeatures().get(0);
}
@@ -238,6 +254,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EReference getAndExpression_ReferencedExpressions() {
return (EReference)andExpressionEClass.getEStructuralFeatures().get(1);
}
@@ -247,6 +264,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EClass getNotExpression() {
return notExpressionEClass;
}
@@ -256,6 +274,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EReference getNotExpression_OwnedExpression() {
return (EReference)notExpressionEClass.getEStructuralFeatures().get(0);
}
@@ -265,6 +284,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EReference getNotExpression_ReferencedExpression() {
return (EReference)notExpressionEClass.getEStructuralFeatures().get(1);
}
@@ -274,6 +294,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EClass getLiteralTrueExpression() {
return literalTrueExpressionEClass;
}
@@ -283,6 +304,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EClass getLiteralFalseExpression() {
return literalFalseExpressionEClass;
}
@@ -292,6 +314,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EClass getReferenceBooleanExpression() {
return referenceBooleanExpressionEClass;
}
@@ -301,6 +324,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EReference getReferenceBooleanExpression_ReferencedExpression() {
return (EReference)referenceBooleanExpressionEClass.getEStructuralFeatures().get(0);
}
@@ -310,6 +334,37 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* <!-- end-user-doc -->
* @generated
*/
+ @Override
+ public EClass getSingleEAttributeValueEqualityExpression() {
+ return singleEAttributeValueEqualityExpressionEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EReference getSingleEAttributeValueEqualityExpression_EAttribute() {
+ return (EReference)singleEAttributeValueEqualityExpressionEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getSingleEAttributeValueEqualityExpression_ExpectedValue() {
+ return (EAttribute)singleEAttributeValueEqualityExpressionEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
public BooleanExpressionsFactory getBooleanExpressionsFactory() {
return (BooleanExpressionsFactory)getEFactoryInstance();
}
@@ -355,6 +410,10 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
referenceBooleanExpressionEClass = createEClass(REFERENCE_BOOLEAN_EXPRESSION);
createEReference(referenceBooleanExpressionEClass, REFERENCE_BOOLEAN_EXPRESSION__REFERENCED_EXPRESSION);
+
+ singleEAttributeValueEqualityExpressionEClass = createEClass(SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION);
+ createEReference(singleEAttributeValueEqualityExpressionEClass, SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EATTRIBUTE);
+ createEAttribute(singleEAttributeValueEqualityExpressionEClass, SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EXPECTED_VALUE);
}
/**
@@ -406,6 +465,7 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
literalTrueExpressionEClass.getESuperTypes().add(this.getIBooleanEObjectExpression());
literalFalseExpressionEClass.getESuperTypes().add(this.getIBooleanEObjectExpression());
referenceBooleanExpressionEClass.getESuperTypes().add(this.getIBooleanEObjectExpression());
+ singleEAttributeValueEqualityExpressionEClass.getESuperTypes().add(this.getIBooleanEObjectExpression());
// Initialize classes, features, and operations; add parameters
initEClass(orExpressionEClass, OrExpression.class, "OrExpression", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
@@ -431,6 +491,10 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
initEClass(referenceBooleanExpressionEClass, ReferenceBooleanExpression.class, "ReferenceBooleanExpression", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
initEReference(getReferenceBooleanExpression_ReferencedExpression(), this.getIBooleanEObjectExpression(), null, "referencedExpression", null, 0, 1, ReferenceBooleanExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEClass(singleEAttributeValueEqualityExpressionEClass, SingleEAttributeValueEqualityExpression.class, "SingleEAttributeValueEqualityExpression", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); //$NON-NLS-1$
+ initEReference(getSingleEAttributeValueEqualityExpression_EAttribute(), theEcorePackage.getEAttribute(), null, "eAttribute", null, 0, 1, SingleEAttributeValueEqualityExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+ initEAttribute(getSingleEAttributeValueEqualityExpression_ExpectedValue(), ecorePackage.getEString(), "expectedValue", null, 0, 1, SingleEAttributeValueEqualityExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); //$NON-NLS-1$
+
// Create annotations
// http://www.eclipse.org/uml2/2.0.0/UML
createUMLAnnotations();
@@ -443,18 +507,18 @@ public class BooleanExpressionsPackageImpl extends EPackageImpl implements Boole
* @generated NOT
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML"; //$NON-NLS-1$
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML"; //$NON-NLS-1$
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "BooleanExpressions" //$NON-NLS-1$ //$NON-NLS-2$
- });
+ "originalName", "BooleanExpressions" //$NON-NLS-1$ //$NON-NLS-2$
+ });
// addAnnotation
-// (null,
-// source,
+// (null,
+// source,
// new String[] {
-// "originalName", "REDEFINED_CONTEXT_TYPE" //$NON-NLS-1$ //$NON-NLS-2$
+// "originalName", "REDEFINED_CONTEXT_TYPE" //$NON-NLS-1$ //$NON-NLS-2$
// });
}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/LiteralFalseExpressionImpl.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/LiteralFalseExpressionImpl.java
index e07f60d51e0..01cb5c925f2 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/LiteralFalseExpressionImpl.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/LiteralFalseExpressionImpl.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl;
@@ -108,6 +107,7 @@ public class LiteralFalseExpressionImpl extends MinimalEObjectImpl.Container imp
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getName() {
return name;
}
@@ -117,6 +117,7 @@ public class LiteralFalseExpressionImpl extends MinimalEObjectImpl.Container imp
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setName(String newName) {
String oldName = name;
name = newName;
@@ -129,6 +130,7 @@ public class LiteralFalseExpressionImpl extends MinimalEObjectImpl.Container imp
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getDescription() {
return description;
}
@@ -138,6 +140,7 @@ public class LiteralFalseExpressionImpl extends MinimalEObjectImpl.Container imp
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setDescription(String newDescription) {
String oldDescription = description;
description = newDescription;
@@ -247,7 +250,7 @@ public class LiteralFalseExpressionImpl extends MinimalEObjectImpl.Container imp
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (name: "); //$NON-NLS-1$
result.append(name);
result.append(", description: "); //$NON-NLS-1$
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/LiteralTrueExpressionImpl.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/LiteralTrueExpressionImpl.java
index 8e6289ed6d1..c4ffe1acb38 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/LiteralTrueExpressionImpl.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/LiteralTrueExpressionImpl.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl;
@@ -108,6 +107,7 @@ public class LiteralTrueExpressionImpl extends MinimalEObjectImpl.Container impl
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getName() {
return name;
}
@@ -117,6 +117,7 @@ public class LiteralTrueExpressionImpl extends MinimalEObjectImpl.Container impl
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setName(String newName) {
String oldName = name;
name = newName;
@@ -129,6 +130,7 @@ public class LiteralTrueExpressionImpl extends MinimalEObjectImpl.Container impl
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getDescription() {
return description;
}
@@ -138,6 +140,7 @@ public class LiteralTrueExpressionImpl extends MinimalEObjectImpl.Container impl
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setDescription(String newDescription) {
String oldDescription = description;
description = newDescription;
@@ -247,7 +250,7 @@ public class LiteralTrueExpressionImpl extends MinimalEObjectImpl.Container impl
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (name: "); //$NON-NLS-1$
result.append(name);
result.append(", description: "); //$NON-NLS-1$
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/NotExpressionImpl.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/NotExpressionImpl.java
index 0dcc1f006ac..b354fc7f2d3 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/NotExpressionImpl.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/NotExpressionImpl.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl;
@@ -133,6 +132,7 @@ public class NotExpressionImpl extends MinimalEObjectImpl.Container implements N
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getName() {
return name;
}
@@ -142,6 +142,7 @@ public class NotExpressionImpl extends MinimalEObjectImpl.Container implements N
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setName(String newName) {
String oldName = name;
name = newName;
@@ -154,6 +155,7 @@ public class NotExpressionImpl extends MinimalEObjectImpl.Container implements N
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getDescription() {
return description;
}
@@ -163,6 +165,7 @@ public class NotExpressionImpl extends MinimalEObjectImpl.Container implements N
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setDescription(String newDescription) {
String oldDescription = description;
description = newDescription;
@@ -175,6 +178,7 @@ public class NotExpressionImpl extends MinimalEObjectImpl.Container implements N
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public IBooleanEObjectExpression getOwnedExpression() {
return ownedExpression;
}
@@ -199,6 +203,7 @@ public class NotExpressionImpl extends MinimalEObjectImpl.Container implements N
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setOwnedExpression(IBooleanEObjectExpression newOwnedExpression) {
if (newOwnedExpression != ownedExpression) {
NotificationChain msgs = null;
@@ -218,6 +223,7 @@ public class NotExpressionImpl extends MinimalEObjectImpl.Container implements N
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public IBooleanEObjectExpression getReferencedExpression() {
if (referencedExpression != null && referencedExpression.eIsProxy()) {
InternalEObject oldReferencedExpression = (InternalEObject)referencedExpression;
@@ -244,6 +250,7 @@ public class NotExpressionImpl extends MinimalEObjectImpl.Container implements N
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setReferencedExpression(IBooleanEObjectExpression newReferencedExpression) {
IBooleanEObjectExpression oldReferencedExpression = referencedExpression;
referencedExpression = newReferencedExpression;
@@ -388,7 +395,7 @@ public class NotExpressionImpl extends MinimalEObjectImpl.Container implements N
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (name: "); //$NON-NLS-1$
result.append(name);
result.append(", description: "); //$NON-NLS-1$
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/OrExpressionImpl.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/OrExpressionImpl.java
index 615b5d83a57..def0887a1b1 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/OrExpressionImpl.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/OrExpressionImpl.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl;
@@ -139,6 +138,7 @@ public class OrExpressionImpl extends MinimalEObjectImpl.Container implements Or
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getName() {
return name;
}
@@ -148,6 +148,7 @@ public class OrExpressionImpl extends MinimalEObjectImpl.Container implements Or
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setName(String newName) {
String oldName = name;
name = newName;
@@ -160,6 +161,7 @@ public class OrExpressionImpl extends MinimalEObjectImpl.Container implements Or
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getDescription() {
return description;
}
@@ -169,6 +171,7 @@ public class OrExpressionImpl extends MinimalEObjectImpl.Container implements Or
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setDescription(String newDescription) {
String oldDescription = description;
description = newDescription;
@@ -181,6 +184,7 @@ public class OrExpressionImpl extends MinimalEObjectImpl.Container implements Or
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EList<IBooleanEObjectExpression> getOwnedExpressions() {
if (ownedExpressions == null) {
ownedExpressions = new EObjectContainmentEList<IBooleanEObjectExpression>(IBooleanEObjectExpression.class, this, BooleanExpressionsPackage.OR_EXPRESSION__OWNED_EXPRESSIONS);
@@ -193,6 +197,7 @@ public class OrExpressionImpl extends MinimalEObjectImpl.Container implements Or
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EList<IBooleanEObjectExpression> getReferencedExpressions() {
if (referencedExpressions == null) {
referencedExpressions = new EObjectResolvingEList<IBooleanEObjectExpression>(IBooleanEObjectExpression.class, this, BooleanExpressionsPackage.OR_EXPRESSION__REFERENCED_EXPRESSIONS);
@@ -339,7 +344,7 @@ public class OrExpressionImpl extends MinimalEObjectImpl.Container implements Or
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (name: "); //$NON-NLS-1$
result.append(name);
result.append(", description: "); //$NON-NLS-1$
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/ReferenceBooleanExpressionImpl.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/ReferenceBooleanExpressionImpl.java
index f416153c614..e110ca59978 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/ReferenceBooleanExpressionImpl.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/ReferenceBooleanExpressionImpl.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl;
@@ -121,6 +120,7 @@ public class ReferenceBooleanExpressionImpl extends MinimalEObjectImpl.Container
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getName() {
return name;
}
@@ -130,6 +130,7 @@ public class ReferenceBooleanExpressionImpl extends MinimalEObjectImpl.Container
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setName(String newName) {
String oldName = name;
name = newName;
@@ -142,6 +143,7 @@ public class ReferenceBooleanExpressionImpl extends MinimalEObjectImpl.Container
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getDescription() {
return description;
}
@@ -151,6 +153,7 @@ public class ReferenceBooleanExpressionImpl extends MinimalEObjectImpl.Container
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setDescription(String newDescription) {
String oldDescription = description;
description = newDescription;
@@ -163,6 +166,7 @@ public class ReferenceBooleanExpressionImpl extends MinimalEObjectImpl.Container
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public IBooleanEObjectExpression getReferencedExpression() {
if (referencedExpression != null && referencedExpression.eIsProxy()) {
InternalEObject oldReferencedExpression = (InternalEObject)referencedExpression;
@@ -189,6 +193,7 @@ public class ReferenceBooleanExpressionImpl extends MinimalEObjectImpl.Container
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setReferencedExpression(IBooleanEObjectExpression newReferencedExpression) {
IBooleanEObjectExpression oldReferencedExpression = referencedExpression;
referencedExpression = newReferencedExpression;
@@ -309,7 +314,7 @@ public class ReferenceBooleanExpressionImpl extends MinimalEObjectImpl.Container
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (name: "); //$NON-NLS-1$
result.append(name);
result.append(", description: "); //$NON-NLS-1$
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/SingleEAttributeValueEqualityExpressionImpl.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/SingleEAttributeValueEqualityExpressionImpl.java
new file mode 100755
index 00000000000..b58beebcad3
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/impl/SingleEAttributeValueEqualityExpressionImpl.java
@@ -0,0 +1,382 @@
+/**
+ * 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.BooleanExpressionsPackage;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Single EAttribute Value Equality Expression</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.SingleEAttributeValueEqualityExpressionImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.SingleEAttributeValueEqualityExpressionImpl#getDescription <em>Description</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.SingleEAttributeValueEqualityExpressionImpl#getEAttribute <em>EAttribute</em>}</li>
+ * <li>{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.SingleEAttributeValueEqualityExpressionImpl#getExpectedValue <em>Expected Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SingleEAttributeValueEqualityExpressionImpl extends MinimalEObjectImpl.Container implements SingleEAttributeValueEqualityExpression {
+ /**
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected static final String NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getName()
+ * @generated
+ * @ordered
+ */
+ protected String name = NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDescription() <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDescription()
+ * @generated
+ * @ordered
+ */
+ protected static final String DESCRIPTION_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDescription() <em>Description</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getDescription()
+ * @generated
+ * @ordered
+ */
+ protected String description = DESCRIPTION_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getEAttribute() <em>EAttribute</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getEAttribute()
+ * @generated
+ * @ordered
+ */
+ protected EAttribute eAttribute;
+
+ /**
+ * The default value of the '{@link #getExpectedValue() <em>Expected Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExpectedValue()
+ * @generated
+ * @ordered
+ */
+ protected static final String EXPECTED_VALUE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getExpectedValue() <em>Expected Value</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getExpectedValue()
+ * @generated
+ * @ordered
+ */
+ protected String expectedValue = EXPECTED_VALUE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected SingleEAttributeValueEqualityExpressionImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return BooleanExpressionsPackage.Literals.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getDescription() {
+ return description;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setDescription(String newDescription) {
+ String oldDescription = description;
+ description = newDescription;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__DESCRIPTION, oldDescription, description));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EAttribute getEAttribute() {
+ if (eAttribute != null && eAttribute.eIsProxy()) {
+ InternalEObject oldEAttribute = (InternalEObject)eAttribute;
+ eAttribute = (EAttribute)eResolveProxy(oldEAttribute);
+ if (eAttribute != oldEAttribute) {
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EATTRIBUTE, oldEAttribute, eAttribute));
+ }
+ }
+ return eAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EAttribute basicGetEAttribute() {
+ return eAttribute;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setEAttribute(EAttribute newEAttribute) {
+ EAttribute oldEAttribute = eAttribute;
+ eAttribute = newEAttribute;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EATTRIBUTE, oldEAttribute, eAttribute));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String getExpectedValue() {
+ return expectedValue;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void setExpectedValue(String newExpectedValue) {
+ String oldExpectedValue = expectedValue;
+ expectedValue = newExpectedValue;
+ if (eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EXPECTED_VALUE, oldExpectedValue, expectedValue));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public Boolean evaluate(EObject context) {
+ // TODO: implement this method
+ // Ensure that you remove @generated or mark it @generated NOT
+ throw new UnsupportedOperationException();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__NAME:
+ return getName();
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__DESCRIPTION:
+ return getDescription();
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EATTRIBUTE:
+ if (resolve) return getEAttribute();
+ return basicGetEAttribute();
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EXPECTED_VALUE:
+ return getExpectedValue();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__NAME:
+ setName((String)newValue);
+ return;
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__DESCRIPTION:
+ setDescription((String)newValue);
+ return;
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EATTRIBUTE:
+ setEAttribute((EAttribute)newValue);
+ return;
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EXPECTED_VALUE:
+ setExpectedValue((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__DESCRIPTION:
+ setDescription(DESCRIPTION_EDEFAULT);
+ return;
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EATTRIBUTE:
+ setEAttribute((EAttribute)null);
+ return;
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EXPECTED_VALUE:
+ setExpectedValue(EXPECTED_VALUE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__DESCRIPTION:
+ return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EATTRIBUTE:
+ return eAttribute != null;
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION__EXPECTED_VALUE:
+ return EXPECTED_VALUE_EDEFAULT == null ? expectedValue != null : !EXPECTED_VALUE_EDEFAULT.equals(expectedValue);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+ switch (operationID) {
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION___EVALUATE__OBJECT:
+ return evaluate((EObject)arguments.get(0));
+ }
+ return super.eInvoke(operationID, arguments);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) return super.toString();
+
+ StringBuilder result = new StringBuilder(super.toString());
+ result.append(" (name: "); //$NON-NLS-1$
+ result.append(name);
+ result.append(", description: "); //$NON-NLS-1$
+ result.append(description);
+ result.append(", expectedValue: "); //$NON-NLS-1$
+ result.append(expectedValue);
+ result.append(')');
+ return result.toString();
+ }
+
+} //SingleEAttributeValueEqualityExpressionImpl
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/util/BooleanExpressionsAdapterFactory.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/util/BooleanExpressionsAdapterFactory.java
index 809858650c0..0faf645a86b 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/util/BooleanExpressionsAdapterFactory.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/util/BooleanExpressionsAdapterFactory.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.util;
@@ -115,6 +114,10 @@ public class BooleanExpressionsAdapterFactory extends AdapterFactoryImpl {
return createReferenceBooleanExpressionAdapter();
}
@Override
+ public Adapter caseSingleEAttributeValueEqualityExpression(SingleEAttributeValueEqualityExpression object) {
+ return createSingleEAttributeValueEqualityExpressionAdapter();
+ }
+ @Override
public Adapter caseIBasicExpressionElement(IBasicExpressionElement object) {
return createIBasicExpressionElementAdapter();
}
@@ -255,6 +258,20 @@ public class BooleanExpressionsAdapterFactory extends AdapterFactoryImpl {
}
/**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression <em>Single EAttribute Value Equality Expression</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression
+ * @generated
+ */
+ public Adapter createSingleEAttributeValueEqualityExpressionAdapter() {
+ return null;
+ }
+
+ /**
* Creates a new adapter for an object of class '{@link org.eclipse.papyrus.infra.emf.expressions.IBasicExpressionElement <em>IBasic Expression Element</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/util/BooleanExpressionsSwitch.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/util/BooleanExpressionsSwitch.java
index 48cc58eb768..b104b491a76 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/util/BooleanExpressionsSwitch.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/util/BooleanExpressionsSwitch.java
@@ -1,16 +1,15 @@
/**
* 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 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
*
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License 2.0
- * which accompanies this distribution, and is available at
- * https://www.eclipse.org/legal/epl-2.0/
- *
- * SPDX-License-Identifier: EPL-2.0
+ * SPDX-License-Identifier: EPL-2.0
*
- * Contributors:
- * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.util;
@@ -158,6 +157,16 @@ public class BooleanExpressionsSwitch<T> extends Switch<T> {
if (result == null) result = defaultCase(theEObject);
return result;
}
+ case BooleanExpressionsPackage.SINGLE_EATTRIBUTE_VALUE_EQUALITY_EXPRESSION: {
+ SingleEAttributeValueEqualityExpression singleEAttributeValueEqualityExpression = (SingleEAttributeValueEqualityExpression)theEObject;
+ T result = caseSingleEAttributeValueEqualityExpression(singleEAttributeValueEqualityExpression);
+ if (result == null) result = caseIBooleanEObjectExpression(singleEAttributeValueEqualityExpression);
+ if (result == null) result = caseIBooleanExpression(singleEAttributeValueEqualityExpression);
+ if (result == null) result = caseIExpression(singleEAttributeValueEqualityExpression);
+ if (result == null) result = caseIBasicExpressionElement(singleEAttributeValueEqualityExpression);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
default: return defaultCase(theEObject);
}
}
@@ -283,6 +292,21 @@ public class BooleanExpressionsSwitch<T> extends Switch<T> {
}
/**
+ * Returns the result of interpreting the object as an instance of '<em>Single EAttribute Value Equality Expression</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ * @param object the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Single EAttribute Value Equality Expression</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSingleEAttributeValueEqualityExpression(SingleEAttributeValueEqualityExpression object) {
+ return null;
+ }
+
+ /**
* Returns the result of interpreting the object as an instance of '<em>IBasic Expression Element</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionCatalogImpl.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionCatalogImpl.java
index 1074dcd237a..8be0d77d505 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionCatalogImpl.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionCatalogImpl.java
@@ -124,6 +124,7 @@ public class ExpressionCatalogImpl extends MinimalEObjectImpl.Container implemen
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getName() {
return name;
}
@@ -133,6 +134,7 @@ public class ExpressionCatalogImpl extends MinimalEObjectImpl.Container implemen
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setName(String newName) {
String oldName = name;
name = newName;
@@ -145,6 +147,7 @@ public class ExpressionCatalogImpl extends MinimalEObjectImpl.Container implemen
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public String getDescription() {
return description;
}
@@ -154,6 +157,7 @@ public class ExpressionCatalogImpl extends MinimalEObjectImpl.Container implemen
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public void setDescription(String newDescription) {
String oldDescription = description;
description = newDescription;
@@ -166,6 +170,7 @@ public class ExpressionCatalogImpl extends MinimalEObjectImpl.Container implemen
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EList<IExpression<?, ?>> getExpressions() {
if (expressions == null) {
expressions = new EObjectContainmentEList<IExpression<?, ?>>(IExpression.class, this, ExpressionsPackage.EXPRESSION_CATALOG__EXPRESSIONS);
@@ -276,7 +281,7 @@ public class ExpressionCatalogImpl extends MinimalEObjectImpl.Container implemen
public String toString() {
if (eIsProxy()) return super.toString();
- StringBuffer result = new StringBuffer(super.toString());
+ StringBuilder result = new StringBuilder(super.toString());
result.append(" (name: "); //$NON-NLS-1$
result.append(name);
result.append(", description: "); //$NON-NLS-1$
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionsFactoryImpl.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionsFactoryImpl.java
index d1d826469f1..706836cc968 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionsFactoryImpl.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionsFactoryImpl.java
@@ -79,6 +79,7 @@ public class ExpressionsFactoryImpl extends EFactoryImpl implements ExpressionsF
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public ExpressionCatalog createExpressionCatalog() {
ExpressionCatalogImpl expressionCatalog = new ExpressionCatalogImpl();
return expressionCatalog;
@@ -89,6 +90,7 @@ public class ExpressionsFactoryImpl extends EFactoryImpl implements ExpressionsF
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public ExpressionsPackage getExpressionsPackage() {
return (ExpressionsPackage)getEPackage();
}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionsPackageImpl.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionsPackageImpl.java
index b9960e7198e..33e8a54c042 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionsPackageImpl.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src-gen/org/eclipse/papyrus/infra/emf/expressions/impl/ExpressionsPackageImpl.java
@@ -91,7 +91,7 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
/**
* Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
- *
+ *
* <p>This method is used to initialize {@link ExpressionsPackage#eINSTANCE} when that field is accessed.
* Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
* <!-- begin-user-doc -->
@@ -105,7 +105,8 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
if (isInited) return (ExpressionsPackage)EPackage.Registry.INSTANCE.getEPackage(ExpressionsPackage.eNS_URI);
// Obtain or create and register package
- ExpressionsPackageImpl theExpressionsPackage = (ExpressionsPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ExpressionsPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ExpressionsPackageImpl());
+ Object registeredExpressionsPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+ ExpressionsPackageImpl theExpressionsPackage = registeredExpressionsPackage instanceof ExpressionsPackageImpl ? (ExpressionsPackageImpl)registeredExpressionsPackage : new ExpressionsPackageImpl();
isInited = true;
@@ -113,7 +114,8 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
EcorePackage.eINSTANCE.eClass();
// Obtain or create and register interdependencies
- BooleanExpressionsPackageImpl theBooleanExpressionsPackage = (BooleanExpressionsPackageImpl)(EPackage.Registry.INSTANCE.getEPackage(BooleanExpressionsPackage.eNS_URI) instanceof BooleanExpressionsPackageImpl ? EPackage.Registry.INSTANCE.getEPackage(BooleanExpressionsPackage.eNS_URI) : BooleanExpressionsPackage.eINSTANCE);
+ Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(BooleanExpressionsPackage.eNS_URI);
+ BooleanExpressionsPackageImpl theBooleanExpressionsPackage = (BooleanExpressionsPackageImpl)(registeredPackage instanceof BooleanExpressionsPackageImpl ? registeredPackage : BooleanExpressionsPackage.eINSTANCE);
// Create package meta-data objects
theExpressionsPackage.createPackageContents();
@@ -126,7 +128,6 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
// Mark meta-data to indicate it can't be changed
theExpressionsPackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(ExpressionsPackage.eNS_URI, theExpressionsPackage);
return theExpressionsPackage;
@@ -137,6 +138,7 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EClass getIBasicExpressionElement() {
return iBasicExpressionElementEClass;
}
@@ -146,6 +148,7 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EAttribute getIBasicExpressionElement_Name() {
return (EAttribute)iBasicExpressionElementEClass.getEStructuralFeatures().get(0);
}
@@ -155,6 +158,7 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EAttribute getIBasicExpressionElement_Description() {
return (EAttribute)iBasicExpressionElementEClass.getEStructuralFeatures().get(1);
}
@@ -164,6 +168,7 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EClass getIExpression() {
return iExpressionEClass;
}
@@ -173,6 +178,7 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EOperation getIExpression__Evaluate__Object() {
return iExpressionEClass.getEOperations().get(0);
}
@@ -182,6 +188,7 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EClass getExpressionCatalog() {
return expressionCatalogEClass;
}
@@ -191,6 +198,7 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public EReference getExpressionCatalog_Expressions() {
return (EReference)expressionCatalogEClass.getEStructuralFeatures().get(0);
}
@@ -200,6 +208,7 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
* <!-- end-user-doc -->
* @generated
*/
+ @Override
public ExpressionsFactory getExpressionsFactory() {
return (ExpressionsFactory)getEFactoryInstance();
}
@@ -309,12 +318,12 @@ public class ExpressionsPackageImpl extends EPackageImpl implements ExpressionsP
* @generated
*/
protected void createUMLAnnotations() {
- String source = "http://www.eclipse.org/uml2/2.0.0/UML"; //$NON-NLS-1$
+ String source = "http://www.eclipse.org/uml2/2.0.0/UML"; //$NON-NLS-1$
addAnnotation
- (this,
- source,
+ (this,
+ source,
new String[] {
- "originalName", "Expressions" //$NON-NLS-1$ //$NON-NLS-2$
+ "originalName", "Expressions" //$NON-NLS-1$ //$NON-NLS-2$
});
}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomBooleanExpressionsFactory.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomBooleanExpressionsFactory.java
index 43ad201453e..cb526e8c392 100755
--- a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomBooleanExpressionsFactory.java
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomBooleanExpressionsFactory.java
@@ -1,14 +1,14 @@
/**
- * Copyright (c) 2017 CEA LIST.
- *
- *
+ * Copyright (c) 2017, 2019 CEA LIST.
+ *
+ *
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
- *
+ *
* Contributors:
* Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
@@ -20,6 +20,7 @@ import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.LiteralTrueE
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.booleanexpressions.SingleEAttributeValueEqualityExpression;
import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.BooleanExpressionsFactoryImpl;
public class CustomBooleanExpressionsFactory extends BooleanExpressionsFactoryImpl {
@@ -89,4 +90,13 @@ public class CustomBooleanExpressionsFactory extends BooleanExpressionsFactoryIm
return new CustomReferenceBooleanExpression();
}
+ /**
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.BooleanExpressionsFactoryImpl#createSingleEAttributeValueEquality()
+ *
+ * @return
+ */
+ @Override
+ public SingleEAttributeValueEqualityExpression createSingleEAttributeValueEqualityExpression() {
+ return new CustomSingleEAttributeValueEqualityExpression();
+ }
}
diff --git a/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomSingleEAttributeValueEqualityExpression.java b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomSingleEAttributeValueEqualityExpression.java
new file mode 100755
index 00000000000..2a9f0e835f8
--- /dev/null
+++ b/plugins/infra/emf/expressions/org.eclipse.papyrus.infra.emf.expressions/src/org/eclipse/papyrus/infra/emf/expressions/booleanexpressions/custom/CustomSingleEAttributeValueEqualityExpression.java
@@ -0,0 +1,50 @@
+/*****************************************************************************
+ * Copyright (c) 2019 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ * Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.custom;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.SingleEAttributeValueEqualityExpression;
+import org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.SingleEAttributeValueEqualityExpressionImpl;
+
+/**
+ * Custom implementationf for {@link SingleEAttributeValueEqualityExpression}
+ */
+public class CustomSingleEAttributeValueEqualityExpression extends SingleEAttributeValueEqualityExpressionImpl {
+
+ /**
+ * @see org.eclipse.papyrus.infra.emf.expressions.booleanexpressions.impl.SingleEAttributeValueEqualityImpl#evaluate(org.eclipse.emf.ecore.EObject)
+ *
+ * @param context
+ * @return
+ */
+ @Override
+ public Boolean evaluate(final EObject context) {
+ if (null != context && null != eAttribute) {
+ if (context.eClass().getEAllAttributes().contains(this.eAttribute)) {
+ final Object value = context.eGet(this.eAttribute);
+ if (null == expectedValue && null == value) {
+ return Boolean.TRUE;
+ }
+ if (null != this.expectedValue) {
+ return Boolean.valueOf(this.expectedValue.equals(value.toString()));
+ }
+ }
+
+ }
+
+ return Boolean.FALSE;
+ }
+}
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 9717e9c45b4..2f49433e192 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
@@ -1,14 +1,14 @@
/**
* 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 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
- *
+ *
* Contributors:
* Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
*/
@@ -29,7 +29,7 @@ import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
import org.eclipse.papyrus.infra.emf.expressions.ExpressionCatalog;
/**
- *
+ *
* This registry provides all the catalog registered throw the extension point {@link ExpressionCatalogRegistry#EXTENSION_ID}
*
*/
@@ -48,7 +48,7 @@ public class ExpressionCatalogRegistry {
/**
* The list of the registered catalog
*/
- private List<ExpressionCatalog> catalogs = new ArrayList<ExpressionCatalog>();
+ private List<ExpressionCatalog> catalogs = new ArrayList<>();
/** The instance of the {@link ExpressionCatalogRegistry} */
public static final ExpressionCatalogRegistry INSTANCE = new ExpressionCatalogRegistry();
@@ -88,12 +88,12 @@ public class ExpressionCatalogRegistry {
}
/**
- *
+ *
* @return
- * all the registered catalog
+ * all the registered catalog
*/
public List<ExpressionCatalog> getAllRegisteredCatalog() {
- return catalogs;
+ return new ArrayList<>(catalogs); // to avoid clear call on the list!
}
}

Back to the top